如何停止rabbitmq服务器

时间:2013-12-16 16:27:26

标签: node.js rabbitmq pid

我正在尝试启动节点应用程序,我认为rabbitmq正在阻碍。

与此主题相似:"node with name "rabbit" already running", but also "unable to connect to node 'rabbit'"

$ ps aux | grep erl
rabbitmq  1327  0.0  0.0   2376   300 ?        S    Dec13   0:00 /usr/lib/erlang/erts-5.8.5/bin/epmd -daemon
rabbitmq  1344  0.0  0.3  59560 14888 ?        Sl   Dec13   0:10 /usr/lib/erlang/erts-5.8.5/bin/beam.smp -W w -K true -A30 -P 1048576 -- -root /usr/lib/erlang -progname erl -- -home /var/lib/rabbitmq -- -noshell -noinput -sname rabbit@jasonshark -boot /var/lib/rabbitmq/mnesia/rabbit@jasonshark-plugins-expand/rabbit -kernel inet_default_connect_options [{nodelay,true}] -sasl errlog_type error -sasl sasl_error_logger false -rabbit error_logger {file,"/var/log/rabbitmq/rabbit@jasonshark.log"} -rabbit sasl_error_logger {file,"/var/log/rabbitmq/rabbit@jasonshark-sasl.log"} -os_mon start_cpu_sup true -os_mon start_disksup false -os_mon start_memsup false -mnesia dir "/var/lib/rabbitmq/mnesia/rabbit@jasonshark"
rabbitmq  1700  0.0  0.0   2136   284 ?        Ss   Dec13   0:00 /usr/lib/erlang/lib/os_mon-2.2.7/priv/bin/cpu_sup
1000     15564  0.0  0.0   4392   820 pts/1    S+   19:23   0:00 grep --color=auto erl

我知道我现在需要运行kill -9 {pid of rabbitmq process},但是哪个数字是pid?

如何停止与rabbitmq有关的一切,我不希望它干扰我的节点js

6 个答案:

答案 0 :(得分:11)

您有几个选择:

  1. 首先,尝试使用init.d脚本sudo /etc/init.d/rabbitmq-server stop
  2. 正常关闭RabbitMQ
  3. 如果这不起作用,请使用ps -eaf | grep erl查找进程和父ID。输出中的第三列是父进程ID。找到仍然是erlang进程的所有进程的第一个祖先(不是启动它的shell脚本)并杀死它。这应该终止其他子进程。如果没有,请手动杀死它们。

答案 1 :(得分:8)

我刚刚开始使用RabbitMQ并了解到您可以使用rabbitmq-server命令干净地关闭rabbitmqctl stop进程。

这可能不适用于您的情况,因为您似乎不是首先在您的服务器上启动rabbitmq的人,但如果您的路径中有rabbitmqctl,则可以尝试使用它尝试彻底关闭。

答案 2 :(得分:3)

这适用于我(在Linux上),当优雅地停止时没有:

sudo pkill beam.smp

其中beam.smp是最新版本中父RabbitMQ进程的名称。

答案 3 :(得分:1)

如果您的系统中有pgrep,那么您可以

pgrep <proc_name>

它将输出一个可用于杀死它们的pid列表

答案 4 :(得分:1)

如果您在安装时使用brew,则可以使用brew services restart rabbitmqbrew services start rabbitmqbrew services stop rabbitmq

答案 5 :(得分:0)

在Ubuntu 18.04上,对我有用的是:

service rabbitmq-server stop

您也可以运行:

service rabbitmq-server start

重新启动。