IDEA中使用jedis连不上虚拟机中的redis:connection timeout

问题描述: jedis连接虚拟机报错:connection timeout。

问题分析:

1.首先查看能否Ping 通虚拟机。

在这里插入图片描述

发现没有问题。

2.查看虚拟机防火墙是否开放6379端口。

在这里插入图片描述

发现之前由于安装mysql关闭了防火墙,并不是防火墙的原因。

如果是防火墙没有开放6379,解决方法如下:

sudo firewall-cmd --permanent --add-port=6379/tcp

设置完成可以查看防火墙设置:

firewall-cmd --list-all

在这里插入图片描述

将配置文件中的 bind 127.0.0.1的地址后加上自己虚拟机的地址即可。

关于这一行,官方注释的翻译如下:

默认情况下,如果未指定“bind”配置指令,Redis将侦听
用于服务器上所有可用网络接口的连接,可以使用以下命令设置仅监听一个或多个选定接口,bind指令后跟一个或多个网络地址,例如:
bind 192.168.1.100 10.0.0.1

警告:如果运行Redis的计算机直接暴露于在internet上,绑定到所有接口是危险的,会将实例暴露给internet上的每个人。因此,默认情况下,我们取消注释遵循bind指令,这将强制Redis只监听IPv4环回接口地址(这意味着Redis将只能接受来自运行在同一台计算机上的客户端的连接)。如果您确定希望您的实例侦听所有接口,只需注释以下行即可

从注释看redis为了安全,设置了redist地址绑定。我的理解是redis的bind 绑定的是本地的ip地址,也就是网卡地址。从下图可以看到有三块网卡,ens33,ens37,lo.因为127.0.0.1是一个回环地址,只有本机才能访问到。如果bind绑定的是其他ip地址,会发现redis起不来,原因就在于我们是通过本地网卡地址访问的redis,与配置文件不一样。
在这里插入图片描述

bind 127.0.0.1 虚拟机地址
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值