1. 程式人生 > >虛擬機搭建redis單機版及redis-cluster,使用redis desktop manager和java(eclipse)連接redis過程遇到問題匯總

虛擬機搭建redis單機版及redis-cluster,使用redis desktop manager和java(eclipse)連接redis過程遇到問題匯總

init clu centos 一律 有用 tex 保護模式 bin service

如果你看到這裏,我默認你已經安裝好了redis,並且已經成功的在虛擬機的Linux系統中ping通。

介紹一下我的環境:VMware虛擬機安裝centos 6.5版的Linux系統,redis是3.0.0. 主機是win10,使用的redis desktop manager是一個很古老的版本0.7.9.809,確實十分古老。但是博主只是為了測試是否能連接,因此各位不要糾結這個問題。JAVA IDE是eclipse mars。

好了,在虛擬機中已經可以成功Ping通,如下圖

技術分享

現在進入正題!!!!!

我真的是太氣憤了!!!網上雖然確實有一大堆人出謀劃策,幫助大家解決學習過程中遇到的Bug。但是!!!能不能不要千篇一律復制粘貼!!對自己寫的東西負責好嗎!!!

從頭到尾,我看了百來篇技術博客、文檔,都是說bind 127.0.0.1註釋掉(確實需要),受保護模式改為no設置密碼主機和虛擬機ip要在同一網段等(根本不需要)...還有要不就是貼一堆failure trace代碼!!連那種沒有用的代碼問問題的時候都要粘上來,誰有那個心情看啊!!!

請務必答應我錯誤代碼放精華部分就行了好嗎!!!

好吧,上面是牢騷,接下來才是正題!!

如果你已經用完了上述所有方法還是無法解決redis desktop manager無法連接虛擬機中的redis時,罪魁禍首一定是你的虛擬機防火墻。

最好的測試是不是虛擬機中的linux系統的防火墻在搗鬼的辦法如下:

打開你windos系統的cmd,敲 telnet linux系統ip 端口號,如:telnet 192.168.18.133 6379

(linux系統的Ip應該都知道咋看吧,敲ifconfig取第一個出現的Ip地址就行了)

如果提示telnet不是內部外部指令啥的,打開控制面板,依次點擊下圖中矩形框中的東西

技術分享

請務必在系統提示你重啟的時候果斷重啟!!!!請務必在系統提示你重啟的時候果斷重啟!!!!請務必在系統提示你重啟的時候果斷重啟!!!!

網上說打開telnet客戶端不用重啟的是win7系統,win10比win7傲嬌啊!!不重啟就不讓你的選擇生效!樓主在這裏也走了彎路,一把辛酸淚。

設置完了,重啟之後,你的所有程序都關閉了吧。這個時候就請你不厭其煩的,打開你的vmware,再開啟你的centos,再啟動你的redis,再測試一下能否在centos中ping通。也就是...回到最初的樣子。

弄完之後,進入windows 的cmd界面,敲telnet linux系統ip 端口號,如果迅速出現一片漆黑,那你可以關掉網頁了....因為本篇博客幫不了你。

如果出現(當然我輸6380是為了截圖失敗的結果,你應該輸的估計是6379)

技術分享

那就說明的確是你的centos的防火墻在整幺蛾子!不聽話!先把它關小黑屋呆一會兒!讓它心甘情願開放你需要的端口,再打開它。

依次敲擊如下代碼:

/etc/init.d/iptables stop

/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

/etc/init.d/iptables save

service iptables restart

敲擊完了之後,可以查看一下是否開放成功,檢查狀態的代碼:/etc/init.d/iptables status

如果開放成功應該是這樣的:

技術分享

你們關註6379就是了,其它的端口是我redis-cluster用的,開啟的方法都一樣,在用eclipse連集群失敗的時候也是因為端口沒有開,錯誤代碼是:

(單機版的錯誤代碼)redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused: connect

(集群版的錯誤代碼)redis.clients.jedis.exceptions.JedisConnectionException: no reachable node in cluster

開啟端口之後,再用telnet指令檢查一下能否連接。如果還是不能連接,就再關一下防火墻,再開一下防火墻。反正我是這麽解決的....如果你這麽做了還沒有解決的話,就各種重啟一下試試吧...反正你也找不到別的解決辦法,還不如用網管的萬能法則——重啟。

幸運的話,你也出現一片漆黑了,再用redis desktop manager測試一下是否能連接成功。

技術分享

如果成功的話,反應是很快的,如果你點TESTCONNECTION很久都沒反應,估計又失敗了。很抱歉,恕在下才疏學淺,幫不上忙....祝你好運!

虛擬機搭建redis單機版及redis-cluster,使用redis desktop manager和java(eclipse)連接redis過程遇到問題匯總