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