PS D:\ruanjian\Redis-x64-5.0.14.1> .\redis-cli Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。 not connected>
时间: 2025-01-15 19:53:27 浏览: 47
### 可能的原因
当尝试通过 `redis-cli` 连接到位于 127.0.0.1 的 Redis 实例并收到 "Connection refused" 错误时,这通常表明存在以下几个潜在原因:
- **Redis服务未运行**:如果 Redis 服务器没有启动,则不会有任何进程在监听默认的 6379 端口[^4]。
- **防火墙或安全组设置**:操作系统中的防火墙或是云环境下的安全策略可能会阻止对指定端口(这里是 6379)的访问请求。
- **Redis配置问题**:Redis 配置文件 (`redis.conf`) 中可能存在限制性的设定,比如绑定了特定 IP 地址或者是禁用了远程连接的功能[^3]。
- **端口冲突**:另一个应用程序可能已经占用了 6379 端口,使得 Redis 无法在此端口上正常工作。
### 解决方案
针对上述提到的各种可能性,可以采取以下措施来解决问题:
#### 检查Redis服务状态
确认 Redis 是否正在作为后台服务运行。可以通过命令提示符 (CMD) 或者 PowerShell 使用如下命令检查服务状态:
```powershell
Get-Service | Where-Object {$_.Name -like "*redis*"}
```
如果没有找到相应的服务条目,或者发现其处于停止状态,则需要启动它。对于 Windows 用户来说,在解压后的 Redis 文件夹内有一个名为 `start-server.bat` 的批处理脚本可以直接用于开启服务;也可以手动创建一个类似的 `.bat` 脚本来实现相同功能[^5]。
#### 查看防火墙规则
确保系统防火墙允许来自外部程序对该端口的数据包进入。可以在控制面板 -> 系统和安全 -> Windows Defender 防火墙 -> 高级设置里添加入站规则以开放 6379 TCP 端口给所有应用或仅限于 `redis-server.exe` 和 `redis-cli.exe`。
#### 修改Redis配置文件
打开 Redis 安装目录下的 `redis.windows.conf` 文件,并查找有关 bind 参数的部分。默认情况下应该是注释掉的状态 (#bind),这意味着它可以接受任何来源的连接。如果有明确指定了某个 IP 地址的话,请将其改为 `0.0.0.0` 来表示不限制源地址,不过这样做会带来一定的安全隐患,建议只在网络受信任的情况下这么做。另外还需要注意保护模式(protected-mode),如果是 yes 则只有 localhost 才能成功建立连接,此时应保持此选项不变除非确实有需求更改。
#### 排除端口占用情况
利用 netstat 工具查询是否有其他进程占据了 6379 端口:
```bash
netstat -ano|findstr :6379
```
一旦发现了冲突的应用程序,可以选择终止它的进程号(PID),或者调整 Redis 的监听端口号至空闲位置再重启服务。
---
阅读全文
相关推荐


















