我显然有一个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。
当前回答
SystemD, Ubuntu 16.04:
$ sudo systemctl is-active redis-server
active
$ sudo systemctl is-enabled redis-server
enabled
$ sudo systemctl disable redis-server
Synchronizing state of redis-server.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable redis-server
Removed /etc/systemd/system/redis.service.
$ sudo systemctl stop redis-server
其他回答
另一种方式是:
ps -ef | grep -i 'redis-server'
kill -9 PID owned by redis
适用于*NIX和OSX
在MacOSX上,
这对我来说很管用
/etc/init.d/redis restart
/etc/init.d/redis stop
/etc/init.d/redis start
选项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
希望能有所帮助
如果您知道它将在哪个端口上运行(默认情况下是6379),您可以使用以下命令获取使用该端口的进程的pid,然后可以对相同的pid执行kill命令。
sudo lsof -i : <port> | awk '{print $2}'
上面的命令将为您提供pid。
杀死pid > <;
这将关闭您的服务器。
我建议禁用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