安装redisclient、redis-cluster,使用redis desktop manager和java(eclipse)连接redis过程遇到问题汇总
如果你看到這里,我默認你已經(jīng)安裝好了redis,并且已經(jīng)成功的在虛擬機的Linux系統(tǒng)中ping通。
介紹一下我的環(huán)境:VMware虛擬機安裝centos 6.5版的Linux系統(tǒng),redis是3.0.0. 主機是win10,使用的redis desktop manager是一個很古老的版本0.7.9.809,確實十分古老。但是博主只是為了測試是否能連接,因此各位不要糾結(jié)這個問題。JAVA IDE是eclipse mars。
好了,在虛擬機中已經(jīng)可以成功Ping通,如下圖
現(xiàn)在進入正題!!!!!
我真的是太氣憤了!!!網(wǎng)上雖然確實有一大堆人出謀劃策,幫助大家解決學(xué)習(xí)過程中遇到的Bug。但是!!!能不能不要千篇一律復(fù)制粘貼!!對自己寫的東西負責(zé)好嗎!!!
從頭到尾,我看了百來篇技術(shù)博客、文檔,都是說bind 127.0.0.1注釋掉(確實需要),受保護模式改為no設(shè)置密碼主機和虛擬機ip要在同一網(wǎng)段等(根本不需要)...還有要不就是貼一堆failure ?trace代碼!!連那種沒有用的代碼問問題的時候都要粘上來,誰有那個心情看啊!!!
請務(wù)必答應(yīng)我錯誤代碼放精華部分就行了好嗎!!!
好吧,上面是牢騷,接下來才是正題!!
如果你已經(jīng)用完了上述所有方法還是無法解決redis desktop manager無法連接虛擬機中的redis時,罪魁禍?zhǔn)滓欢ㄊ悄愕奶摂M機防火墻。
最好的測試是不是虛擬機中的linux系統(tǒng)的防火墻在搗鬼的辦法如下:
打開你windos系統(tǒng)的cmd,敲 telnet linux系統(tǒng)ip 端口號,如:telnet 192.168.18.133 6379
(linux系統(tǒng)的Ip應(yīng)該都知道咋看吧,敲ifconfig取第一個出現(xiàn)的Ip地址就行了)
如果提示telnet不是內(nèi)部外部指令啥的,打開控制面板,依次點擊下圖中矩形框中的東西
請務(wù)必在系統(tǒng)提示你重啟的時候果斷重啟!!!!請務(wù)必在系統(tǒng)提示你重啟的時候果斷重啟!!!!請務(wù)必在系統(tǒng)提示你重啟的時候果斷重啟!!!!
網(wǎng)上說打開telnet客戶端不用重啟的是win7系統(tǒng),win10比win7傲嬌啊!!不重啟就不讓你的選擇生效!樓主在這里也走了彎路,一把辛酸淚。
?設(shè)置完了,重啟之后,你的所有程序都關(guān)閉了吧。這個時候就請你不厭其煩的,打開你的vmware,再開啟你的centos,再啟動你的redis,再測試一下能否在centos中ping通。也就是...回到最初的樣子。
弄完之后,進入windows 的cmd界面,敲telnet linux系統(tǒng)ip 端口號,如果迅速出現(xiàn)一片漆黑,那你可以關(guān)掉網(wǎng)頁了....因為本篇博客幫不了你。
如果出現(xiàn)(當(dāng)然我輸6380是為了截圖失敗的結(jié)果,你應(yīng)該輸?shù)墓烙嬍?379)
?
那就說明的確是你的centos的防火墻在整幺蛾子!不聽話!先把它關(guān)小黑屋呆一會兒!讓它心甘情愿開放你需要的端口,再打開它。
依次敲擊如下代碼:?
/etc/init.d/iptables stop
/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT
/etc/init.d/iptables save
service iptables restart
敲擊完了之后,可以查看一下是否開放成功,檢查狀態(tài)的代碼:/etc/init.d/iptables status
?如果開放成功應(yīng)該是這樣的:
你們關(guān)注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指令檢查一下能否連接。如果還是不能連接,就再關(guān)一下防火墻,再開一下防火墻。反正我是這么解決的....如果你這么做了還沒有解決的話,就各種重啟一下試試吧...反正你也找不到別的解決辦法,還不如用網(wǎng)管的萬能法則——重啟。
幸運的話,你也出現(xiàn)一片漆黑了,再用redis desktop manager測試一下是否能連接成功。
?如果成功的話,反應(yīng)是很快的,如果你點TESTCONNECTION很久都沒反應(yīng),估計又失敗了。很抱歉,恕在下才疏學(xué)淺,幫不上忙....祝你好運!
總結(jié)
以上是生活随笔為你收集整理的安装redisclient、redis-cluster,使用redis desktop manager和java(eclipse)连接redis过程遇到问题汇总的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (九)演员-评论员算法
- 下一篇: Linux系统编程:fork函数的使用【