Redis-Cli无法连接127.0.0.1:6379,但Redis-Stack运行正常求解决
解决Redis无法连接(Can't assign requested address)问题
1. 检查本地回环地址配置
- 先运行
ping 127.0.0.1,如果无法ping通,检查hosts文件:- Windows:打开
C:\Windows\System32\drivers\etc\hosts,确认存在127.0.0.1 localhost配置 - Linux/macOS:打开
/etc/hosts,同样确认上述配置项
- Windows:打开
- 若hosts配置正常,尝试重启本地网络服务
2. 验证Redis绑定地址
- 找到Redis配置文件(通常为
redis.conf或redis-stack.conf),查找bind配置项:- 确保设置为
bind 127.0.0.1(仅本地访问)或bind 0.0.0.0(允许所有地址访问) - 修改配置后,重启Redis服务:
redis-server /path/to/your/redis.conf
- 确保设置为
- 也可以启动时直接指定绑定地址:
redis-server --bind 127.0.0.1
3. 排查端口占用与防火墙
- 检查6379端口是否被其他进程占用:
- Windows:执行
netstat -ano | findstr :6379,若有结果,在任务管理器中结束对应PID的进程 - Linux/macOS:执行
lsof -i :6379或netstat -tulpn | grep 6379,结束占用端口的进程
- Windows:执行
- 临时关闭本地防火墙测试连接,若能正常连接,添加6379端口的放行规则
4. 显式指定参数连接Redis
不要依赖默认连接,手动指定IP和端口:
redis-cli -h 127.0.0.1 -p 6379
也可以尝试用localhost连接:
redis-cli -h localhost -p 6379
5. 查看Redis启动日志
启动Redis时留意控制台输出,确认服务实际绑定的地址和端口:
- 正常启动会打印类似
* Listening on 127.0.0.1:6379的信息 - 若日志显示绑定地址不符,调整配置后重新启动服务
6. 重置网络栈(Windows专属)
执行以下命令重置Winsock,之后重启电脑再测试:
netsh winsock reset
内容的提问来源于stack exchange,提问作者beepboop
相关产品推荐
相关产品推荐

