代碼如下:
@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>
