我的RabbitMQ服务器出现故障,无法重新启动它。我试图重新启动,重新安装...我仍然不理解错误。 这就是我得到的
BOOT FAILED
===========
Error description:
{could_not_start,rabbit,
{bad_return,
{{rabbit,start,[normal,[]]},
{'EXIT',
{rabbit,failure_during_boot,
{badmatch,
{error,
{{{function_clause,
[{rabbit_queue_index,journal_minus_segment1,
[{no_pub,del,no_ack},
{{<<115,254,171,167,171,226,110,171,251,38,217,145,3,12,215,151>>,
{message_properties,1409712663123302,false},
true},
del,ack}],
[{file,"src/rabbit_queue_index.erl"},{line,989}]},
{rabbit_queue_index,'-journal_minus_segment/2-fun-0-',4,
[{file,"src/rabbit_queue_index.erl"},{line,973}]},
{array,sparse_foldl_3,7,[{file,"array.erl"},{line,1675}]},
{array,sparse_foldl_2,9,[{file,"array.erl"},{line,1669}]},
{rabbit_queue_index,'-recover_journal/1-fun-0-',1,
[{file,"src/rabbit_queue_index.erl"},{line,701}]},
{lists,map,2,[{file,"lists.erl"},{line,1224}]},
{rabbit_queue_index,segment_map,2,
[{file,"src/rabbit_queue_index.erl"},{line,819}]},
{rabbit_queue_index,recover_journal,1,
[{file,"src/rabbit_queue_index.erl"},{line,693}]}]},
{gen_server2,call,[<0.186.0>,out,infinity]}},
{child,undefined,msg_store_persistent,
{rabbit_msg_store,start_link,
[msg_store_persistent,
"/var/lib/rabbitmq/mnesia/rabbit@host",[],
{#Fun<rabbit_queue_index.2.132977059>,
{start,
[{resource,<<"/">>,queue,
<<"photos_to_be_tagged_user_36">>}]}}]},
transient,4294967295,worker,
[rabbit_msg_store]}}}}}}}}}
任何人都可以帮忙吗?
非常感谢
答案 0 :(得分:14)
对于其他寻找此错误的人来说,兔子,failure_during_boot,
{badmatch,
{error,
{{{function_clause,
[{rabbit_queue_index,journal_minus_segment1, ...
我刚刚处理了同样的问题以及有助于进入mnesia目录并删除队列和msg_store_transient目录的内容。
根据我的理解,发生的事情是你最终得到一个糟糕的队列数据库(无论出于什么原因 - 例如突然断电,其他一些进程接触文件),rabbitmq无法解析这些数据库崩溃。一旦清除了消息队列,它就可以正常工作。
答案 1 :(得分:3)
我遇到了同样的问题,这对我有帮助。
问题中的Mnesia文件位于/var/lib/rabbitmq/
。
答案 2 :(得分:0)
我必须删除...\AppData\Roaming\RabbitMQ\db
中的所有内容,而不仅仅是Mnesia
文件中的所有内容(显然是Windows)。