洞察掌握android电视app开发中的安全与合规策略,提升企业运营效率
1124
2022-08-25
RabbitMQ重启后数据和用户丢失
问题描述:在重启RabbitMQ服务后,数据丢失,用户丢失。
问题原因:在RabbitMQ服务启动后,对主机名进行过修改,而修改主机名会导致数据存储路径发生变化,如果不重启RabbitMQ不会有事,如重启则会数据和用户全部丢失
问题细节:(1)在Linux中,RabbitMQ运行中的数据保存在/var/lib/rabbitmq/mnesia/中,数据目录通过主机名自动生成。(2)在修改主机名并重启服务后,RabbitMQ会重新加载数据存储目录(自动寻找以当前主机名命名的目录,如没有则自动创建),而不会再读取以原主机名命名的目录。(3)而在新目录中不存在数据,导致“数据和用户丢失”现象。
解决办法一:将主机名还原,改回去(如果主机名中有使用大写字母,可以使用hostnamectl set-hostname --static [主机名],确保大写字母不自动被转换为小写字母)
解决办法二:不把主机名改回去,将RabbitMQ的节点名字固定,设置了节点名后,优先读取节点名(可以设置为原主机名,这样读取的数据存储目录还是不变):echo 'NODENAME=rabbit@info' | sudo tee -a /etc/rabbitmq/rabbitmq-env.confecho '127.0.0.1 info' | sudo tee -a /etc/hosts
重要说明:如你的RabbitMQ在修改主机名后,没有重启过,则使用上面的解决办法之一后,无需重启服务(提前预防问题);如你的RabbitMQ在修改主机名后,已经重启过,故障已经发生,则使用上面的解决办法之一处理后,必须重启RabbitMQ服务,数据才可恢复。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~