Java鏈接Redis時出現 “ERR Client sent AUTH, but no password is set” 異常的原因及解決辦法


Java鏈接Redis時出現 “ERR Client sent AUTH, but no password is set” 異常的原因及解決辦法


【錯誤提示】


redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
at redis.clients.util.Pool.getResource(Pool.java:53)
at redis.clients.jedis.JedisPool.getResource(JedisPool.java:226)
at cn.hncu.RedisPool.getJedis(RedisPool.java:66)
at cn.hncu.RedisJava.main(RedisJava.java:15)

Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set
at redis.clients.jedis.Protocol.processError(Protocol.java:127)
at redis.clients.jedis.Protocol.process(Protocol.java:161)
at redis.clients.jedis.Protocol.read(Protocol.java:215)
at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:340)
at redis.clients.jedis.Connection.getStatusCodeReply(Connection.java:239)
at redis.clients.jedis.BinaryJedis.auth(BinaryJedis.java:2139)
at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:108)
at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:868)


【問題原因】

Redis服務器沒有設置密碼,但客戶端向其發送了AUTH(authentication,身份驗證)請求。

【解決辦法】

確定Redis啟動時指定是哪個配置文件。


如上圖是 redis.windows.conf 文件,用文本編輯工具打開文件,找到“requirepass”,去掉注釋設置密碼。



編輯完后保存,重新啟動Redis,再運行程序,OK。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM