Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。[windows]
目标计算机积极拒绝:你的程序比如 redis-cli 或你的应用已经成功找到了 127.0.0.1 这台计算机就是本机也找到了 6379 这个端口但是当它尝试在这个端口上建立连接时对方也就是操作系统的网络栈直接说“不这个端口上没有程序在监听用大白话比喻你打电话给一个号码127.0.0.1:6379。号码是对的电话线也通网络可达。但电话那头提示“您拨打的号码暂时无人接听请稍后再拨。”在 Redis 的场景里这意味着没有 Redis 服务在 6379 端口上等待连接。所以问题的根源只有一个Redis 服务器没有在后台运行或者运行了但没有正确绑定到 127.0.0.1:6379。二、如何验证 Redis 是否真的在监听 6379打开一个新的PowerShell 窗口不用管理员执行powershellnetstat -an | findstr :6379如果看到类似这样的输出textTCP 0.0.0.0:6379 0.0.0.0:0 LISTENING TCP [::]:6379 [::]:0 LISTENINGnetstat显示 6379 端口处于LISTENING状态只能证明有一个程序在监听这个端口netstat -ano | findstr :6379拿到 PID然后用tasklist | findstr PID看进程名。如果是Redis 正在监听。如果这时你的程序还报“积极拒绝”可能是防火墙拦截了本地回环极少见或者你的程序连接的是别的 IP比如localhost有时候会被解析成 IPv6 问题。如果不是Redis正在监听。掐断它taskkill /f /pid ***如果没有任何输出说明端口上没有服务在监听 —— 那你需要重新启动 Redis并保持窗口开着。三、正确的临时测试方法打开一个 PowerShell 窗口不要关闭进入 Redis 目录执行powershell.\redis-server.exe .\redis.windows.conf你会看到日志最后一行大概是* Ready to accept connections。保持这个窗口开着再打开第二个 PowerShell 窗口用来连接测试在第二个窗口进入 Redis 目录执行powershell.\redis-cli.exe -h 127.0.0.1 -p 6379 ping应该返回PONG。这就代表连接成功完全没有“积极拒绝”了。如果你关掉第一个窗口再在第二个窗口里执行ping就会立刻出现你看到的那个“目标计算机积极拒绝”错误。这正好印证了原因。五、长期解决办法安装为 Windows 服务为了不让 Redis 因为关掉窗口而停止你应该把 Redis 安装成 Windows 后台服务这样开机自启永远在后台运行。以管理员身份打开 PowerShell然后powershellcd C:\Users\86156\Downloads\...\Redis-x64-5.0.14.1 # 替换成你实际的路径 .\redis-server.exe --service-install .\redis.windows.conf .\redis-server.exe --service-start之后你可以在“服务”管理器services.msc里看到Redis服务设置为“自动”即可。安装服务成功后即使你关闭所有 PowerShell 窗口Redis 依然在后台运行127.0.0.1:6379永远可以连接再也不会出现“积极拒绝”。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2568295.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!