Java連線Redis碰到的坑connect timed out
阿新 • • 發佈:2019-01-03
1,先看Java程式碼
package com.demo;
import redis.clients.jedis.Jedis;
public class Demo1 {
public static void main(String[] args) {
Jedis edis = new Jedis("192.168.1.60",6379);
System.out.println(edis.ping());
}
}
簡單說明:192.168.1.60是Linux主機IP,6379Redis的預設配置埠
2,執行一波,效果如下
3,解決辦法
(1)在Linux找到你的redis.conf配置檔案,到該目錄下使用命令:vi 配置檔名
開啟配置,將bind 127.0.0.1 註釋掉(最前面加個 #)
原因:bind 127.0.0.1是隻允許本機訪問,就是隻允許Linux虛擬機器自己訪問,而我們要用Windows去訪問,顯然它不認得
(2)關閉防火牆
不同的Centos版本命令不一樣,我的是Centos6.3,用service iptables stop 關閉,重啟Redis服務,再執行一波JAVA,如圖
經過查詢,執行(3)
(3) 設定連線Redis的密碼config set requirepass 123456 123456是設定的密碼,Java新增設定密碼的部分
package com.demo; import redis.clients.jedis.Jedis; public class Demo1 { public static void main(String[] args) { Jedis edis = new Jedis("192.168.1.60",6379); edis.auth("123456"); System.out.println(edis.ping()); } }
4,再執行一波
解決!
5,僅供參考