解决Jedis 在Java环境中连接Redis报错
解决Jedis 在Java环境中连接Redis报错问题描述当正确的导入jar包(导入pom)之后启动测试程序报错源码程序:@Testpublic void redisTest(){Jedis jedis = new Jedis("192.168.85.200",6379);String set = jedis.set("name", "itheima");String name = jedis.g
·
解决Jedis 在Java环境中连接Redis报错
问题描述
当正确的导入jar包(导入pom)之后启动测试程序报错
源码程序:
@Test
public void redisTest(){
Jedis jedis = new Jedis("192.168.85.200",6379);
String set = jedis.set("name", "itheima");
String name = jedis.get("name");
System.out.println(name);
jedis.close();
redis.clients.jedis.exceptions.JedisConnectionException: Failed to create socket.
问题排查
排查一
排查点 :Jedis 设置host地址和port是否填写错误
检查结果:
此处使用的是vm的虚拟即运行系统是CenOS7 检查后发现host 地址以及Redis的端口没错
排查二
排查点: Redis的配置设置了连接ip限制
检测结果:
已经注释 不会造成限制
排查三
排查点:linux 防火墙
操作:关闭防火墙
systemctl stop firewalld.service
systemctl stop iptables.service
新问题:
Failed to stop iptables.service: Unit iptables.service not loaded.
翻译:iptables停止失败。服务iptables没有加载。
操作2:
yum install iptables-services
提示安装成功
再次执行:
systemctl stop iptables.service
这次没再报错
重新启动Redis
ps aux | grep redis
kill xxxx(上述指令查询到的 redis-server的进程ID)
redis-server redis.conf (注意这是根据配置文件启动Redis 这个配置文件是我自己写的已经注释bind 127.0.0.1)
问题解决
代码:
@Test
public void redisTest(){
Jedis jedis = new Jedis("192.168.85.200",6379);
String set = jedis.set("name", "zhangsan");
String name = jedis.get("name");
System.out.println(name);
jedis.close();
}
结果:
zhangsan
更多推荐
已为社区贡献1条内容
所有评论(0)