Redis版本:3.2.0 Jedis版本:2.8.1
下面是我连接到redis的java代码:
public class TestRedis {
public static void main(String[] args) {
String host = args[0];
int port = Integer.parseInt(args[1]);
try (Jedis jedis = new Jedis(host, port)) {
System.out.println("Connected to jedis " + jedis.ping());
} catch(Exception e){
e.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
}
我在安装了redis的机器上运行此程序.这台机器的IP地址是192.168.1.57
如果我提供host ="localhost"和port ="6379"作为参数,则成功建立与redis的连接.
但是,如果我在参数中给出host ="192.168.1.57"和port ="6379",我最终得到以下异常:
redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused
at redis.clients.jedis.Connection.connect(Connection.java:164)
at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:80)
at redis.clients.jedis.Connection.sendCommand(Connection.java:100)
at redis.clients.jedis.Connection.sendCommand(Connection.java:95)
at redis.clients.jedis.BinaryClient.ping(BinaryClient.java:93)
at redis.clients.jedis.BinaryJedis.ping(BinaryJedis.java:105)
at TestRedis.main(TestRedis.java:14)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at redis.clients.jedis.Connection.connect(Connection.java:158)
... 6 more
Run Code Online (Sandbox Code Playgroud)
请帮忙...
有一些设置可能会影响此设置:bind和protected-mode。他们一起工作以提供新安装的安全性基线。
在redis.conf文件中找到以下内容并将其注释掉:
bind 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
#在其前面添加一个:
# bind 127.0.0.1
Run Code Online (Sandbox Code Playgroud)
或者,如果您不想将其注释掉,也可以向其中添加eth0/ em1接口的IP ,如下所示:
bind 127.0.0.1 192.168.1.57
Run Code Online (Sandbox Code Playgroud)
另外,除非您使用密码安全性,否则还必须通过更改以下内容来关闭保护模式:
protected-mode yes
Run Code Online (Sandbox Code Playgroud)
至:
protected-mode no
Run Code Online (Sandbox Code Playgroud)
确保您阅读了相关文档并了解这两个更改的安全隐患。
进行这些更改后,重新启动Redis。
| 归档时间: |
|
| 查看次数: |
12346 次 |
| 最近记录: |