jedis连接redis异常解决


代码如下:

    @Test
    public void test(){
        JedisPool pool = new JedisPool(new JedisPoolConfig(), IPADDRESS, PORT, TIMEOUT); 
        Jedis jedis = pool.getResource();
        jedis.set("name", "cc");
        String name = jedis.get("name");
        System.out.println(name);
    }

 

 

 

 linux防火墙已关闭,ping linux也是通的。经查资料,redis配置文件中注释掉bind 127.0.0.1即可(注释后,即允许其他设备访问)

 修改配置文件后,重启redis服务再次连接,报如下异常

异常描述大致是说,redis正在受保护的状态下运行,并且给了你4中解决办法。这里我们选用第4种,提供一个验证密码。

还是在redis配置文件中,修改requirepass password,如下

 

修改配置文件后,同样要重启redis服务。(也可以使用命令修改验证密码:config set requirepass password)

 

总结一下:

1.关闭LINUX上的防火墙

2.修改redis配置文件中的本地绑定(注释掉bind 127.0.0.1)

3.提供验证密码

 

最终代码如下:

    @Test
    public void test(){
        JedisPool pool = new JedisPool(new JedisPoolConfig(), IPADDRESS, PORT, TIMEOUT); 
        Jedis jedis = pool.getResource();
        jedis.auth("wsys");        //多了验证
        jedis.set("name", "cc");
        String name = jedis.get("name");
        System.out.println(name);
    }

 

附带上jedis相关JAR包 (MAVEN):

<dependency>
  <groupId>redis.clients</groupId>
  <artifactId>jedis</artifactId>
  <version>2.8.1</version>
  <type>jar</type>
  <scope>compile</scope>
</dependency>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM