【BUG】远程连接阿里云服务器上的redis报错

出现 Redis Client On Error: Error: connect ECONNREFUSED 47.100.XXX.XX:6379 错误,表明 Redis 客户端无法连接到指定的 Redis 服务器,可按以下步骤排查解决:

1. 检查 Redis 服务器是否运行

操作:在 Redis 服务器所在终端执行 redis - cli ping

若返回 PONG,说明 Redis 服务运行正常,进入下一步;

若无响应,需启动 Redis 服务(以常见系统为例):

  • Linux(如 Ubuntu/CentOS):sudo systemctl start redis(或 redis - server 直接启动)。

2. 验证网络连接与端口开放

  • 测试端口连通性 :在客户端所在终端执行 telnet 47.100.XX.XX 6379
    若提示 Connected,说明端口开放且网络通畅,进入下一步;
    若提示连接失败,检查以下两项:
    • 防火墙设置

      • Linux 系统:使用 firewall - cmd --query - port=6379/tcp 检查端口是否开放,未开放则执行 firewall - cmd --add - port=6379/tcp --permanent 开放端口,再重启防火墙 firewall - cmd --reload
      • 云服务器(如阿里云、腾讯云):检查安全组规则,确保 6379 端口(TCP)允许入站。
    • 网络连通性 :确认客户端与服务器间无网络隔离(如 VPN、代理干扰),可尝试 ping 47.100.165.17 测试基础网络连通性。

3. 检查 Redis 服务器配置

查看配置文件 :找到 Redis 配置文件(通常为 /etc/redis/redis.conf),确认以下内容:

  • 端口:port 6379 确保端口未被修改。
  • 监听地址:若 bind 配置为 127.0.0.1,表示仅允许本地连接。需改为 bind 0.0.0.0(允许所有地址访问)或指定允许的客户端 IP(如 117.64.3.191),修改后重启 Redis 服务:
    Linux:sudo systemctl restart redis

4. 检查客户端连接配置

确认客户端代码中连接的 IP 和端口正确,例如(以 Node.js 为例):

js 复制代码
const redis = require('redis');  
const client = redis.createClient({  
  host: '47.100.XXX.XX',  
  port: 6379  
});  

若 Redis 配置了密码,还需添加 password 参数:

js 复制代码
const client = redis.createClient({  
  host: '47.100.XXX.XX',  
  port: 6379,  
  password: '你的 Redis 密码'  
});  

完成以上步骤后,重新运行客户端,若配置正确且网络正常,应能成功连接 Redis 服务器。

相关推荐
躺不平的理查德10 小时前
ARCH与交叉编译器的关系
服务器·arm
谢慧琼12 小时前
2026零基础做企业网站,低成本搭建官方网站
服务器·前端·javascript
世人万千丶15 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
程序员与背包客_CoderZ15 小时前
Linux D-Bus通信协议详解:从入门到C/C++编码实战
linux·服务器·c语言·c++·嵌入式硬件·嵌入式软件·dbus
Android系统攻城狮15 小时前
Linux PipeWire深度解析之pw_properties_iterate调用流程与实战(六十五)
linux·运维·服务器·音频进阶·pipewire音频进阶
ITyunwei098716 小时前
内存溢出报错,实战处理记录
运维·服务器·企业微信
谷哥的小弟17 小时前
腾讯云服务器安装Redis Stack图文教程
服务器·redis·腾讯云·redis stack
发量惊人的中年网工18 小时前
中小企业网络管理进阶:从设备堆叠到统一管理
服务器·网络·安全·网络安全·php·制造
jason.zeng@150220718 小时前
linux的top命令
java·linux·服务器
RisunJan18 小时前
Linux命令-talk(终端实时对话)
linux·运维·服务器