rabbitmq拒绝开始

Ali*_*Ali 41 rabbitmq

我已经安装了rabbitmq ubuntu并尝试使用它启动它rabbitmq-server start,但是,我收到此错误:

Activating RabbitMQ plugins ...

0 plugins activated:

node with name "rabbit" already running on "mybox"

diagnostics:

- nodes and their ports on mybox: [{rabbit,38618},
                                       {rabbitmqprelaunch13346,41776}]
- current node: rabbitmqprelaunch13346@mybox
- current node home dir: /var/lib/rabbitmq
- current node cookie hash: 8QRKGluOJOcZ4AAkEdFwQg==
Run Code Online (Sandbox Code Playgroud)

所以我尝试停止它或重新启动它service rabbitmq-server restart但我得到以下错误:Restarting rabbitmq-server: RabbitMQ is not running

服务器的主机名hostname -s是mybox.

如何停止当前运行的实例,或者至少如何管理它?我无法访问它,但我无法正常运行rabbitmq.

谢谢.

Gre*_*HNZ 63

Rabbitmq设置为在安装后自动启动.我不认为它是配置运行service命令.

看看rabbitmq的状态

sudo rabbitmqctl status
Run Code Online (Sandbox Code Playgroud)

停止rabbitmq

sudo rabbitmqctl stop
Run Code Online (Sandbox Code Playgroud)

(再次尝试状态命令以查看它已停止).要重新启动它,推荐的方法是

sudo invoke-rc.d rabbitmq-server start
Run Code Online (Sandbox Code Playgroud)

这些都与使用apt-get的vanilla ubuntu安装一起工作

还是行不通?

如果您尝试启动或重新启动rabbitmq失败,请检查正在运行的进程数.

ps -ef | grep rabbit
Run Code Online (Sandbox Code Playgroud)

应该有5个进程作为用户rabbitmq运行.如果您有更多,特别是如果他们以其他用户(例如root用户或您自己的用户)身份运行,您应该停止这些进程.

最干净的方法可能是重启你的机器.

  • 谢谢回复。`rabbitmqctl status` 给出了我帖子中引用的相同的未运行错误。`rabbitmqctl stop` 抛出错误,表示兔子没有运行!`invoke-rc.drabbitmq-server start`同样的错误说兔子已经在运行:-\ (2认同)

jet*_*com 11

Mnesia 数据库似乎已损坏。必须删除它才能sudo service rabbitmq-server start重新开始!

$ sudo rm -rf /var/lib/rabbitmq/mnesia/

还要确保在清除之前杀死所有流浪兔子进程

$ ps auxww | grep 兔子 | awk '{print $2}' | 须藤 xargs 杀死 -9

进而

$ sudo servicerabbitmq-server启动


Ven*_*tra 9

rabbitmq-server如果hostname -s值已更改,则拒绝启动.

此处建议的解决方案仅适用于测试/开发环境.

我不得不删除数据库以在本地修复它.即空文件夹/var/lib/rabbitmq(ubuntu)或/usr/local/var/lib/rabbitmq/(mac)

  • 这是 Mac 上自制软件的“/usr/local/var/lib/rabbitmq/” (2认同)

Mur*_*rlu 7

我有类似的问题,但这些建议对我不起作用(重启也).当我运行rabbitmq-server命令时,我得到这样的响应:

$/ rabbitmq-server


BOOT FAILED
===========

Error description:
   {error,{cannot_log_to_file,"/var/log/rabbitmq/rabbit@haber01.log",
                              {error,eacces}}}
....
Run Code Online (Sandbox Code Playgroud)

当我检查/var/log/rabbitmq/rabbit@haber01.log文件的权限时,我看到该组没有为该文件写入权限.所以我允许使用该命令进行分组:

/var/log/rabbigmq/$ chmod g+w *
Run Code Online (Sandbox Code Playgroud)

然后问题就消失了!

也许这个答案有助于某人.