Redis解决方案:NOAUTH Authentication required(连接jedis绑定密码或修改redis密码)
Java使用jedis连接redis时出现错误NOAUTH Authentication required
一、问题报错和原因
本地设置了redis的密码,但在远程连接时并没有输入密码,所以无法请求成功!
二、解决方法一:去除或修改本地redis密码
1、打开redis的安装目录,找到redis.windows.conf配置文件
2、找到requirepass foobared位置,在下面添加一行requirepass+你想要的修改的密码(该行注意顶格写),删除这行则没有密码
3、然后重新启动redis再次进入redis-cli命令行窗口则需要输入新的密码
三、解决方法二:连接jedis时绑定密码
1、使用JedisShardInfo时
2、使用Jedis时
public void testJedisSingle(){Jedis jedis = new Jedis("127.0.0.1", 6379);jedis.auth("你的密码");jedis.set("aaa","123");String aaa = jedis.get("aaa");System.out.println(aaa);jedis.close();}
3、使用JedisPool时
public void pool() {JedisPoolConfig config = new JedisPoolConfig();//最大连接数config.setMaxTotal(30);//最大连接空闲数config.setMaxIdle(2);JedisPool pool = new JedisPool(config, "127.0.0.1", 6379);//有密码也可以用下面这个连接方法//jedisPool = new JedisPool(Config,"127.0.0.1", 6379 ,3000, redisPassword);Jedis jedis = null;try {jedis = pool.getResource();jedis.auth("你的密码");jedis.set("name", "123");String name = jedis.get("name");System.out.println(name);}catch(Exception ex){ex.printStackTrace();}finally{if(jedis != null){//关闭连接jedis.close();}}}