redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set

原创 2016年08月31日 14:19:03

使用哨兵模式连接redis连接池时,遇到错误:

Caused by: redis.clients.jedis.exceptions.JedisDataException:
 ERR Client sent AUTH, but no password is set

发现是redis没有设置密码,程序却发送了auth选项。

工程里JedisSentinelPool是通过spring配置的:

    <bean id="jedisPool" class="redis.clients.jedis.JedisSentinelPool" destroy-method="destroy">
        <constructor-arg value="${redis.master}" />
        <constructor-arg>
            <set>
                <value>${redis.host}:${redis.port}</value>
            </set>
        </constructor-arg>
        <constructor-arg ref="jedisPoolConfig" />
        <constructor-arg value="${redis.timeout}"/>
    </bean>

发现JedisSentinelPool的构造方法有2个类似的:
	public JedisSentinelPool(String masterName, Set sentinels,
			GenericObjectPoolConfig poolConfig, int timeout) {
		this(masterName, sentinels, poolConfig, timeout, null, 0);
	}

	public JedisSentinelPool(String masterName, Set sentinels,
			GenericObjectPoolConfig poolConfig, String password) {
		this(masterName, sentinels, poolConfig, 2000, password);
	}

JedisSentinelPool初始化构造方法的入参是根据spring配置文件的参数配置顺序加载的,JedisSentinelPool使用了第二个构造方法,导致上面的错误。

解决方法,给配置文件的参数配置name属性.

    <bean id="jedisPool" class="redis.clients.jedis.JedisSentinelPool" destroy-method="destroy">
        <constructor-arg name="masterName" value="${redis.master}" />
        <constructor-arg name="sentinels">
            <set>
                <value>${redis.host}:${redis.port}</value>
            </set>
        </constructor-arg>
        <constructor-arg name="poolConfig" ref="jedisPoolConfig" />
        <constructor-arg  name="timeout" value="${redis.timeout}"/>
    </bean>

问题解决


版权声明:本文为博主原创文章,未经博主允许不得转载。

redis异常解决:jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set

项目中用到了redis做缓存服务器,今天一次重启后报出下面的异常,最后经过各种排查,才终于定位到了原因,记录如下: redis.clients.jedis.exceptions.JedisConnec...
  • rchm8519
  • rchm8519
  • 2015年09月10日 19:47
  • 81576

Java链接Redis时出现 “ERR Client sent AUTH, but no password is set” 异常的原因及解决办法

Java链接Redis时出现 “ERR Client sent AUTH, but no password is set” 异常的原因及解决办法 【错误提示】 redis.clients....
  • iw1210
  • iw1210
  • 2017年05月17日 20:09
  • 3635

JedisDataException: ERR Client sent AUTH, but no password is set

redis明明已经设置的密码,但是连接的时候发现desktop可以连接上,但是jedis就是不行,经测试发现使用口令和不使用口令 desktop Manage 都可以连上,有点坑,原因是启动redis...
  • woshishui6501
  • woshishui6501
  • 2017年10月10日 11:25
  • 172

Jedis异常总结

1、java.lang.ClassCastException: java.lang.Long cannot be cast to java.util.List          at redis...
  • cynhafa
  • cynhafa
  • 2014年10月09日 18:31
  • 8325

Caused by: redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password

在对redis 做测试的时候遇到以上问题,经过排查问题出现在,redis的启动方式。   第一种是使用服务端命令   ./redis-server 这种方式启动 默认无密码  ,如果在写...
  • u010011737
  • u010011737
  • 2016年04月14日 10:28
  • 6230

redis异常解决:jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set

springmvc redis 项目链接redis客户端时失败,报一下异常: redis.clients.jedis.exceptions.JedisDataException: ERR Clien...
  • u011257574
  • u011257574
  • 2016年03月03日 15:28
  • 11535

jedis 连接redis超时异常

1、redis 部署环境 centos7.0 2、通过jedis 源码调试 出现错误,如下 Exception in thread “main” redis.clients.jedis.except...
  • sinat_25112709
  • sinat_25112709
  • 2016年09月20日 13:52
  • 198

jedis和redis的异常处理

前言:貌似在jedis中返回的报错信息,就是redis中的错误信息。 一、"(error) WRONGTYPE Operation against a key holding the wro...
  • darkdragonking
  • darkdragonking
  • 2016年09月06日 16:28
  • 842

连接redis报此错误:ERR Client sent AUTH, but no password is set

from: http://bbs.csdn.net/topics/391824759?page=1 127.0.0.1:6379> auth 123456 ERR Client se...
  • J_mani
  • J_mani
  • 2017年07月31日 17:32
  • 1784

org.springframework.dao.InvalidDataAccessApiUsageException: ERR value is not an integer or out of ra

背景使用spring redis的increment方法时,爆出如上错误,详细异常栈如下 org.springframework.dao.InvalidDataAccessApiUsageExce...
  • wangjun5159
  • wangjun5159
  • 2016年08月31日 18:45
  • 4683
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:redis.clients.jedis.exceptions.JedisDataException: ERR Client sent AUTH, but no password is set
举报原因:
原因补充:

(最多只允许输入30个字)