rabbitmq迁移队列丢失

环境

Centos7.9
rabbitmq 3.3.5
阿里云EC2

背景

接到需求,需要将rabbitmq所在的服务器迁到另一个账号,旧服务器简称O,新服务器简称N。没什么特殊操作,就是简单的对O做镜像,还原到N。启动N服务器时,发现rabbitmq账号掉了,队列也掉了不少。

原因:

肯定是迁移导致的,以前遇到过是因为计算机名变化,导致服务器信息变更,但这次机器名是一样的,没有再往深了查,重做一遍权限就好了

解决办法:

1、重新加账号
2、把O的队列导出,导入到N

1
2
3
4
5
在O服务器导出队列
curl -u <username>:<password> http://<source_host>:<source_port>/api/definitions > rabbit_definitions.json
在N服务器导入队列
curl -u <username>:<password> -H "Content-Type: application/json" -X POST -d @rabbit_definitions.json http://<destination_host>:<destination_port>/api/definitions