服务器的Redis连接不上解决方案

服务器的Redis连接不上解决方案

  • 前言
  • 解决方案

前言

  如果你看到这里,我默认你已经安装好了redis,并且已经成功的在虚拟机的Linux系统中ping通。
  我真的是太气愤了!!!网上虽然确实有一大堆人出谋划策,帮助大家解决学习过程中遇到的Bug。但是!!!能不能不要千篇一律复制粘贴!!对自己写的东西负责好吗!!!
  从头到尾,我看了百来篇技术博客、文档,都是说bind 127.0.0.1注释掉(确实需要),受保护模式改为no设置密码主机和虚拟机ip要在同一网段等(根本不需要)…还有要不就是贴一堆failure trace代码!!连那种没有用的代码问问题的时候都要粘上来,谁有那个心情看啊!!!
  请务必答应我错误代码放精华部分就行了好吗!!!
  好吧,上面是牢骚,接下来才是正题!!
  如果你已经用完了上述所有方法还是无法解决redis desktop manager无法连接虚拟机中的redis时,罪魁祸首一定是你的虚拟机防火墙。

解决方案

  最好的测试是不是虚拟机中的linux系统的防火墙在捣鬼的办法如下:

  打开你windos系统的cmd,敲 telnet linux系统ip 端口号,如:telnet 192.168.192.171 6379
(linux系统的Ip应该都知道咋看吧,敲ifconfig取第一个出现的Ip地址就行了)
如果提示telnet不是内部外部指令啥的,打开控制面板,依次点击下图中矩形框中的东西
服务器的Redis连接不上解决方案_第1张图片
服务器的Redis连接不上解决方案_第2张图片
  如果出现(当然我输6380是为了截图失败的结果,你应该输的估计是6379)那就说明的确是你的centos的防火墙在整幺蛾子!
在这里插入图片描述
依次输入如下代码:

/etc/init.d/iptables stop

/sbin/iptables -I INPUT -p tcp --dport 6379 -j ACCEPT

/etc/init.d/iptables save

service iptables restart

完了之后,可以查看一下是否开放成功,检查状态的代码:/etc/init.d/iptables status
服务器的Redis连接不上解决方案_第3张图片
一般到这里就差不多解决了,最后记得改完配置一定要重启!重启!重启!
重启后输入 telnet 192.168.192.171 6379
在这里插入图片描述

/*        Jedis jedis = new Jedis("192.168.192.171", 6379);
        String ping = jedis.ping();
        System.out.println(ping);
        jedis.set("age","20");
        System.out.println(jedis.get("age"));*/
        ValueOperations ops =redisTemplate.opsForValue();
        ops.set("name","JustinNeil");
        System.out.println(ops.get("name"));
        ValueOperations ops1 =stringRedisTemplate.opsForValue();
        ops1.set("age","18");
        System.out.println(ops1.get("age"));

在这里插入图片描述

你可能感兴趣的:(Redis)