远程无法访问服务器端Redis服务
测试连接工具(win自带)
参考:https://blog.csdn.net/yjn1995/article/details/99302431
步骤
打开windos系统的cmd,输入命令telnet linux系统IP 端口号,如:telnet 127.0.0.1 6379
-
连接不成功。
telnet 127.0.0.1 6379 Connecting To 127.0.0.1...Could not open connection to the host, on port 6379: Connect failed
-
连接成功,跳转界面(反正不是出现上面的情况,嘻嘻~)
如果提示telnet不是内部外部指令
#控制面板---->程序---->启动或关闭Windows功能---->找到Telnet Client打上√
排错步骤
1.配置文件
打开对应的redis.config
-
是否允许其他IP地址访问?
################################## NETWORK ##################################### # ... # IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES # JUST COMMENT OUT THE FOLLOWING LINE. #(如果您确定希望您的实例侦听所有接口,只需注释掉以下行。) # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bind 127.0.0.1 # 只允许本机访问
使用#将这句注释掉,也将意味着所有IP地址都允许访问。(我的是有两个bind,注释了一行还有一行,排查了半天。真的半天(−_−#))
-
是否开启了保护?
################################## NETWORK ##################################### # ... # By default protected mode is enabled. You should disable it only if # you are sure you want clients from other hosts to connect to Redis # even if no authentication is configured, nor a specific set of interfaces # are explicitly listed using the "bind" directive. # (默认情况下,启用保护模式。只有当您确定希望来自其他主机的客户端连接到Redis(即使未配置身份验证,也未使用“bind”指令显式列出特定的接口集)时,才应禁用该功能。) protected-mode yes # 默认开启保护模式
将yes改为no关闭保护模式,可以让来自其他主机的客户端连接到该server。
-
是否使用对应的配置文件开启的Redis服务!
不用就是白配!
重启!!!!
redis-server [配置文件]
2.远程服务器端口
(非云服务器跳过)
-
云服务器
- 登录到自己的云服务器控制台
- 找到服务器中安全组
- 添加规则(配置规则)
- 根据自己需要放开6379端口(redis默认端口,也以6379为例)
-
宝塔面板
-
登录到服务器对应的宝塔面板
-
点击右侧安全
-
查看是否放行端口6379,如果未放行需要放行端口
-
3.防火墙是否拦截
查看端口6379
是否被防火墙拦截
firewall-cmd --query-port=6379/tcp
4.是否为主节点!(踩了大坑)
-
进入到
redis-cli
-
查看role是否为slave。如果为slave,需要连接主机,或者改为主机(不建议,但是可以。毕竟我就一台服务器)
-
手动改为主节点
SLAVEOF no one # 自己为主节点
-
查看role为master即可