網上查找的方法
方法一:idea中已經下載了Iedis 插件,
也導入了jar包
<!-- https://mvnrepository.com/artifact/commons-pool/commons-pool --> <dependency> <groupId>commons-pool</groupId> <artifactId>commons-pool</artifactId> <version>1.6</version> </dependency> <!-- https://mvnrepository.com/artifact/redis.clients/jedis --> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.9.0</version> </dependency>
redis.conf 也做了修改 1.注釋掉了127.0.0.1 pritect-model no 防火牆關了 daemonize yes
失敗
Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused: connect at redis.clients.jedis.Connection.connect(Connection.java:207) at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:93) at redis.clients.jedis.Connection.sendCommand(Connection.java:126) at redis.clients.jedis.Connection.sendCommand(Connection.java:121) at redis.clients.jedis.BinaryClient.ping(BinaryClient.java:106) at redis.clients.jedis.BinaryJedis.ping(BinaryJedis.java:195) at Demo1.main(Demo1.java:12) Caused by: java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85) at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172) at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) at java.net.Socket.connect(Socket.java:589) at redis.clients.jedis.Connection.connect(Connection.java:184) ... 6 more
后來設置了密碼
若運行出現了問題
127.0.0.1:6379> ping (error) NOAUTH Authentication required.
解決辦法
127.0.0.1:6379> auth 111 OK
auth 后面加上你的密碼就ok 了。
================================================================================================
這個樓主可是幫忙了,終於連上了(http://www.cnblogs.com/zfding/p/7966450.html)
RedisDesktopManager連接不上redis的解決方法 RedisDesktopManager是一款連接redis數據庫的客戶端。 背景:我是在自己機器上裝的redis,使用的是虛擬機,系統是linux 版本是centeros-6.7 在使用這個連接redis的時候,發現連接不上。 第一步:在自己的本機外面試下能不能連接上虛擬機,打開cmd,使用 ping 192.168.65.128 (192.168.65.128這個為虛擬機的ip地址 查看虛擬機的ip地址:命令 ifconfig) 如果能ping的通,這個沒問題,表示外部可以訪問得到。訪問不到可以,把虛擬機的防火牆給關了,最省事,命令: service iptables stop 第二步:在redis的配置文件(redis.conf)里面是否設置了requirepass 表示連接的密碼,如果沒有設置,不好意思,連接不上 第三步: 在redis的配置文件里面,是否把bind 127.0.0.1 給注釋掉,如果沒有,連接不上 以上這些你都做了,應該就沒有問題了 如果還是連接不上,你首先在你虛擬機里面登錄上redis的客戶端 進入到src目錄層級下面。 和啟動redis一樣,命令: ./redis-cli 進入到客戶端之后:命令:auth 1234(你設置的密碼) 看一下是否ok。 我之前在這里踩了坑,明明我的配置文件里面設置了訪問密碼,卻沒有生效,為了保險起見,還是再來看下,密碼是否生效了 如果ok,那就沒有問題,如果出現了錯誤,說你密碼沒有設置,那就直接用命令設置:config set requirepass 1234(這個為你設置的訪密碼) 然后再試下命令 auth 1234(出現ok就好了) 這樣就應該可以順利的連接上redis了。
連接時
下面是關於設置redis 的密碼(https://www.cnblogs.com/756623607-zhang/p/6859540.html)
1.第一種方式 (當前這種linux配置redis密碼的方法是一種臨時的,如果redis重啟之后密碼就會失效,)
(1)首先進入redis,如果沒有開啟redis則需要先開啟:
[root@iZ94jzcra1hZ bin]# redis-cli -p 6379 127.0.0.1:6379>
(2)查看當前redis有沒有設置密碼:
127.0.0.1:6379> config get requirepass 1) "requirepass" 2) ""
(3)為以上顯示說明沒有密碼,那么現在來設置密碼:
127.0.0.1:6379> config set requirepass abcdefg OK 127.0.0.1:6379>
(4)再次查看當前redis就提示需要密碼:
127.0.0.1:6379> config get requirepass (error) NOAUTH Authentication required. 127.0.0.1:6379>
2.第二種方式 (永久方式)
需要永久配置密碼的話就去redis.conf的配置文件中找到requirepass這個參數,如下配置:
修改redis.conf配置文件
# requirepass foobared
requirepass 123 指定密碼123
保存后重啟redis就可以了
連接redis
1.redis-cli連接redis
[root@iZ2ze3zda3caeyx6pn7c5zZ bin]# redis-cli 127.0.0.1:6379> keys * (error) NOAUTH Authentication required. 127.0.0.1:6379> auth 123 //指定密碼 OK 127.0.0.1:6379> keys * 1) "a" 2) "cit" 3) "clist" 4) "1" 127.0.0.1:6379>
2.Jedis連接redis
java 代碼方式
//連接redis服務器,192.168.0.100:6379
jedis = new Jedis("ip", 6379);
//權限認證
jedis.auth("password");
配置文件方式
<bean id=”jedisConnectionFactory” class=”org.springframework.data.redis.connection.jedis.JedisConnectionFactory”> <property name=”hostName” value=”${redis.host}” /> <property name=”port” value=”${redis.port}” /> <property name=”password” value=”${redis.pass}” /> </bean>
redis的其他命令。
如果需要關閉redis:
[root@iZ94jzcra1hZ bin]# pkill redis
如果需要開啟redis:
[root@iZ94jzcra1hZ bin]# redis-server &
加&符號的作用是為了讓此進程轉換為后台進程,不占用shell的服務。