使用自制程序安装Redis,但当我尝试ping Redis时,它显示这个错误:
Could not connect to Redis at 127.0.0.1:6379: Connection refused
注意: 我尝试关闭防火墙并编辑conf文件,但仍然无法ping通。 我使用的是macOS Sierra和自制版本1.1.11
使用自制程序安装Redis,但当我尝试ping Redis时,它显示这个错误:
Could not connect to Redis at 127.0.0.1:6379: Connection refused
注意: 我尝试关闭防火墙并编辑conf文件,但仍然无法ping通。 我使用的是macOS Sierra和自制版本1.1.11
当前回答
实际上,你需要在安装后运行“redis-server &”来启动服务,当你只运行“redis-server”时,服务以非分离模式运行。强调“&”
其他回答
我发现这个问题,同时试图弄清楚为什么我不能连接到redis后启动它通过brew服务启动redis。
博士tl;
取决于你的机器或安装的更新程度,你可能会丢失一个配置文件或redis默认目录。
你需要一个配置文件在/usr/local/etc/redis.conf。没有这个文件redis-server将无法启动。您可以复制默认配置文件,并从那里修改它 Cp /usr/local/etc/redis.conf.default /usr/local/etc/redis.conf.default 你需要/usr/local/var/db/redis/存在。这很容易做到 Mkdir -p /usr/local/var/db/redis
最后用brew services重启redis。
你是怎么发现的!?
我浪费了很多时间试图弄清楚redis是否没有通过homebrew使用默认设置,以及它在哪个端口上。服务是误导性的,因为即使redis-server实际上没有启动,brew服务列表仍然会显示redis为“已启动”。最好的方法是使用brew服务——详细启动redis,它会显示日志文件在/usr/local/var/log/redis.log。我在里面找到了确凿的证据
Fatal error, can't open config file '/usr/local/etc/redis.conf'
or
Can't chdir to '/usr/local/var/db/redis/': No such file or directory
幸运的是,日志使上述解决方案变得显而易见。
我不能运行redis-server吗?
你当然可以。如果你运行redis-server &,它只会占用一个终端或偶尔打断你的终端。它也会把转储。RDB在您运行它的任何目录中(pwd)。我很讨厌在git中删除文件或忽略它,所以我想让brew用服务来做这项工作。
日期:2021年12月
这个错误有几个原因。我读了一篇文章来解决这个问题。所以我就逐一总结一下要检查什么。
1检查:Redis-Server未启动
redis-server
Also to run Redis in the background, the following command could be used.
redis-server --daemonize yes
2. 检查:防火墙限制
sudo ufw status (inactive)
sudo ufw active (for making active it might disable ssh when first time active. So enable port 22 to access ssh.)
sudo ufw allow 22
sudo ufw allow 6379
3.检查:资源使用情况
ps -aux | grep redis
4. 配置设置限制
sudo vi /etc/redis/redis.conf.
注释下面的行。
# bind 127.0.0.1 ::1
注意:恶意行为者将更难发出请求或访问您的服务器。确保您绑定到正确的IP地址网络。
希望它能帮助到别人。欲了解更多信息,请阅读下面的文章。
https://bobcares.com/blog/could-not-connect-to-redis-connection-refused/
实际上,你需要在安装后运行“redis-server &”来启动服务,当你只运行“redis-server”时,服务以非分离模式运行。强调“&”
这对我来说很有用:
sudo service redis-server start
安装完redis后,从终端输入:
redis-server
Redis-Server将启动