jedis连接redis 出现 ERR Client sent AUTH, but no password is set

本文解析了Redis连接中出现的JedisConnectionException错误,详细分析了错误原因,即客户端发送带密码请求而Redis未设置密码的情况,并提供了两种解决方案:一是调整Redis连接配置,二是修改redis.windows-service.conf文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【错误提示】

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)

【错误原因】

客户端发送 AUTH(带密码的)的请求,失败。但是Redis没有设置密码

使用的是redis-server --service-install安装的Redis服务,没有指定确切的配置文件,redis读取的时候以redis.windows-service.conf为准了,这里面的requirepass root是被注释掉的,所以当客户端发送带密码的redis请求,本地却没有设置密码,所以报错

 

redis.windows.conf里面的设置了密码(jedis连接的时候没有使用这个配置文件),但使用Redis Manager可以登录(这里我有点懵!)

【解决办法】

(1)redis连接配置,password注释掉

或者

(2)redis.windows-service.conf(要看Redis服务是启动的哪个配置文件),如下:

里的  #requirepass root  改为  requirepass root

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值