我显然有一个redis-server实例正在运行,因为当我试图通过输入redis-server启动一个新服务器时,我受到以下欢迎:

Opening port: bind: Address already in use

我不知道如何停止这个服务器,并启动一个新的。

当我在CLI中输入时,是否有任何命令可以附加到redis-server ?

我的操作系统是Ubuntu 10.04。


当前回答

一个更干净、更可靠的方法是进入redis-cli,然后输入shutdown

在redis-cli中,输入help @server,你会在列表底部看到:

SHUTDOWN - summary:同步保存数据集到磁盘,然后 从:0.07开始关闭服务器

如果你在终端中运行一个redis-server实例,你会看到:

User requested shutdown...
[6716] 02 Aug 15:48:44 * Saving the final RDB snapshot before exiting.
[6716] 02 Aug 15:48:44 * DB saved on disk
[6716] 02 Aug 15:48:44 # Redis is now ready to exit, bye bye...

其他回答

以root用户在终端中停止redis服务器类型

sudo service redis-server stop

停止redis-server后会显示此消息

Stopping redis-server: redis-server.

如果你想启动redis-server类型

sudo service redis-server start

如果要重新启动服务器类型

sudo service redis-server restart

我的情况是:

/etc/init.d/redismaster stop
/etc/init.d/redismaster start

要找出你的服务名称,你可以运行:

sudo updatedb
locate redis

它会显示你系统中的每一个Redis文件。

我建议禁用Redis-server,它可以防止计算机重启时自动启动,对使用docker之类的工具非常有用。

步骤1:停止redis-server

sudo service redis-server stop

步骤2:关闭redis-server

sudo systemctl disable redis-server

如果你需要redis,你可以这样启动:

sudo service redis-server start

如果你知道哪个端口(默认值:6379)你的redis服务器正在运行,你可以选择选项1,或者你可以检查你的redis进程,你可以用选项2杀死

选项1:关闭端口上的进程:

check     : sudo lsof -t -i:6379
kill      : sudo kill `sudo lsof -t -i:6379`

选项2: 找到之前运行的Redis服务器:

 ps auxx | grep redis-server

通过查找PID(进程ID) - Redis Sever来杀死特定的进程

kill -9 PID

现在启动你的redis服务器

redis-server /path/to/redis.conf 

在CLI中输入SHUTDOWN

or

如果你不关心内存中的数据,你也可以输入SHUTDOWN NOSAVE来强制关闭服务器。