问题描述
我显然正在运行redis-server
实例,因为当我尝试通过输入redis-server
来启动新服务器时,遇到了以下问题:
Opening port: bind: Address already in use
我不知道如何停止此服务器并启动新服务器。
在CLI中键入命令时,我可以在redis-server
后面附加任何命令吗?
我的操作系统是Ubuntu 10.04。
最佳答案
连接到节点实例并使用shutdown命令,或者如果您在ubuntu上,则可以尝试通过init.d重新启动Redis服务器:
/etc/init.d/redis-server restart
或停止/启动它:
/etc/init.d/redis-server stop
/etc/init.d/redis-server start
在Mac上
redis-cli shutdown
次佳答案
一种更干净,更可靠的方法是进入redis-cli,然后键入shutdown
在redis-cli中,键入help @server
,您将在列表底部看到以下内容:
SHUTDOWN – summary: Synchronously save the dataset to disk and then shut down the server since: 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...
第三种答案
redis-cli shutdown
最有效。接受的答案对我不起作用(OSX Lion)。谢谢@JesseBuesking。
第四种答案
对于OSX,我创建了以下别名来启动和停止redis
(与Homebrew一起安装):
alias redstart='redis-server /usr/local/etc/redis/6379.conf'
alias redstop='redis-cli -h 127.0.0.1 -p 6379 shutdown'
这对于本地开发非常有用!
Homebrew现在具有homebrew-services
,可用于启动,停止和重新启动服务。 homebrew-services
运行时会自动安装brew services
。
brew services start|run redis
brew services stop redis
brew services restart redis
如果您使用run
,那么它将不会在登录(也不引导)时启动它。 start
将启动redis
服务,并在登录和引导时将其添加。
第五种答案
在CLI中键入SHUTDOWN
要么
如果您不关心内存中的数据,也可以键入SHUTDOWN NOSAVE
强制关闭服务器。
第六种答案
尝试killall redis-server
。您也可以使用ps aux
查找服务器的名称和pid,然后使用kill -9 here_pid_number
将其杀死。
第七种答案
选项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 -9 22292
kill -9 22299
我正在使用Centos 6.7,x86_64
希望能帮助到你
第八种答案
另一种方法可能是:
ps -ef | grep -i 'redis-server'
kill -9 PID owned by redis
适用于* NIX& OSX
第九种答案
以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
第十种答案
MacOSX-工作正常:)
步骤1:查找先前正在运行的Redis服务器
ps auxx | grep redis-server
第2步:通过找到PID(进程ID)杀死特定进程-Redis Sever
kill -9 PID