使用自制程序安装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后,从终端输入:

redis-server

Redis-Server将启动

如果安装后你需要一直运行redis,只需输入terminal:

redis-server &

在Ubuntu上使用upstart运行redis

我一直在试图理解如何从头开始在Ubuntu上安装系统。我只是在盒子上安装了redis,这里是我是怎么做的,还有一些事情要注意。

如何安装:

sudo apt-get install redis-server

这将创建一个redis用户并安装init。D脚本。因为upstart现在是使用init的替代品。d,我认为我应该将其转换为使用upstart运行。

禁用默认的init。redis D脚本:

sudo update-rc.d redis-server disable

然后使用以下脚本创建/etc/init/redis-server.conf:

description "redis server"

start on runlevel [23]
stop on shutdown

exec sudo -u redis /usr/bin/redis-server /etc/redis/redis.conf

respawn

这是upstart的脚本,让upstart知道要运行什么命令来启动进程。最后一行还告诉新贵,如果它死了,要继续尝试重生。

我必须在/etc/redis/redis.conf中修改的一件事是daemonize yes改为daemonize no。如果你不改变它会发生什么,redis-server会fork并守护自己,并且父进程会消失。当这种情况发生时,upstart认为进程已经死亡/停止,您将无法从upstart内部控制进程。

现在你可以使用下面的命令来控制你的redis-server:

sudo start redis-server
sudo restart redis-server
sudo stop 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用服务来做这项工作。

我试图连接我的Redis运行在wsl2从vs代码运行在Windows。

我列出了对我有效的方法,以及我执行这些方法的顺序:

1) sudo ufw allow 6379
2) Update redis.conf to bind 127.0.0.1 ::1 192.168.1.7
3) sudo service redis-server restart

注意:这是我第一次在wsl2上安装Redis,而且还没有运行任何命令。

如果对你有用,请告诉我。 谢谢。

在Apple Silicon上连接Redis错误(Macbook Pro M1 - 2020年12月),你只需要知道两件事:

使用sudo运行redis-server将删除服务器启动错误

Shell % sudo redis-server

为了将其作为服务“daemonize”运行,它将允许您在后台运行

Shell % sudo redis-server—daemonize是

使用以下步骤验证: Shell % redis-cli ping

希望这能帮助所有担心缺少文档的Macbook Pro M1用户。