我显然有一个redis-server实例正在运行,因为当我试图通过输入redis-server启动一个新服务器时,我受到以下欢迎:
Opening port: bind: Address already in use
我不知道如何停止这个服务器,并启动一个新的。
当我在CLI中输入时,是否有任何命令可以附加到redis-server ?
我的操作系统是Ubuntu 10.04。
我显然有一个redis-server实例正在运行,因为当我试图通过输入redis-server启动一个新服务器时,我受到以下欢迎:
Opening port: bind: Address already in use
我不知道如何停止这个服务器,并启动一个新的。
当我在CLI中输入时,是否有任何命令可以附加到redis-server ?
我的操作系统是Ubuntu 10.04。
当前回答
在CLI中输入SHUTDOWN
or
如果你不关心内存中的数据,你也可以输入SHUTDOWN NOSAVE来强制关闭服务器。
其他回答
另一种方式是:
brew services stop redis
以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
选项1:进入redis安装目录并导航到src,在我的情况下:
/opt/redis3/src/redis-cli -p 6379 shutdown
其中6379为默认端口。
选项2:查找redis进程并杀死
ps aux | grep redis-server
t6b3fg 22292 0.0 0.0 106360 1588 pts/0 S+ 01:19 0:00 /bin/sh /sbin/service redis start
t6b3fg 22299 0.0 0.0 11340 1200 pts/0 S+ 01:19 0:00 /bin/sh /etc/init.d/redis start
然后启动kill:
kill -9 22292
kill -9 22299
我使用的是Centos 6.7, x86_64
希望能有所帮助
你可以试试下面的代码:
sudo kill -9 $(ps aux | grep 'redis' | awk '{print $2}')
我不知道redis的具体情况,但对于一般的服务器来说:
什么操作系统或发行版?通常会有一个stop或/etc/init.d/…命令,该命令能够在pid文件中查找现有的pid。
您可以使用sudo netstat -nlpt (linux options;其他netstat口味会有所不同),并发出停止的信号。我不会在运行中的服务器上使用kill -9,除非真的没有其他信号或方法来关闭它。