SpringBoot项目连接Redis:ERR Client sent AUTH, but no password is set
【摘要】 问题
SpringBoot项目连接Redis报错:
Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set
at redis.clients.jedis.Protocol.processError(Proto...
问题
SpringBoot项目连接Redis报错:
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:874)
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:417)
at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:346)
at redis.clients.util.Pool.getResource(Pool.java:49)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
原因
问题也很明显:Redis服务器没有设置密码,但客户端向其发送了AUTH(authentication,身份验证)请求。
解决
方法一:去掉配置项里的password
将配置中的password注释掉
方法二:给Redis服务端设置密码
第二种是给Redis Server设置密码,并且客户端配置正确的密码。
可以通过命令行修改密码:
config set requirepass 123456
- 1
也可以通过修改配置文件来修改密码,redis.windows.conf配置文件,搜索requirepass,找到注释密码行,去掉注释,设置密码:
requirepass tenny //注意,行前不能有空格
- 1
详见参考【2】。
参考:
【1】:Java链接Redis时出现 “ERR Client sent AUTH, but no password is set” 异常的原因及解决办法
【2】:Redis设置密码
文章来源: blog.csdn.net,作者:三分恶,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/sinat_40770656/article/details/109189220
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)