Rabbitmq数据备份与还原

一、场景

现在有服务器A和服务器B ,由于业务需要,要求把服务器A上mq的数据迁移到服务器B上,rabbitmq的数据包括元数据(RabbitMQ用户、vhost、队列、交换和绑定)和消息数据,而消息数据存储在单独的消息存储库中。

A:192.168.2.58

B:192.168.1.60

二、元数据备份和还原

1、操作

在服务B上搭建rabbitmq服务,注意,主机名最好和A上的MQ保持一致。避免后面的数据存储节点名不一致,导致启动失败

安装过程详见:

2、导出数据

用管理员账号登录到A服务器上的管理后台

http://192.168.2.58:15672,按如下所示把备份的数据下载到本地

Rabbitmq数据备份与还原

 3、导入数据

登录到B服务器上的MQ管理后台

http://192.168.1.60:15672,进入如下图所示的位置,导入数据,大概10秒钟左右。

Rabbitmq数据备份与还原

4、验证数据

刷新页面,查看用户、队列、vhost 等信息是否存在

Rabbitmq数据备份与还原

 三、消息数据备份和还原

1、确定数据目录

登录到A服务器,执行如下命令,确定消息数据存储目:

[root@rabbitmq-ipr-service-test opt]# rabbitmqctl eval 'rabbit_mnesia:dir().'
"/var/lib/rabbitmq/mnesia/rabbit@rabbitmq-ipr-service-test"

2、为避免数据的一致性,需先停掉服务

service rabbitmq-server stop

3、备份数据目录

tar  -zcvf rabbit@rabbitmq-ipr-service-test.tar.gz  rabbit@rabbitmq-ipr-service-test

 4、还原数据

登录到B服务器上,先备份原来的数据目录,上传到备份数据到对应目录,并解压

tar  -zxvf  rabbit@rabbitmq-ipr-service-test.tar.gz 

5、修改数据目录权限

chown  -R rabbitmq:rabbitmq  rabbit@rabbitmq-ipr-service-test

6、启动B服务器上rabbitmq服务

service rabbitmq-server satrt

7、验证消息数据是否还原成功

Rabbitmq数据备份与还原

四、注意

内部节点数据库在某些记录中存储节点的名称,如果节点名称发生更改,则必须首先使用以下rabbitmqctl命令更新数据库以便更改:

rabbitmqctl rename_cluster_node <oldnode> <newnode>

当新节点以备份目录和匹配的节点名称启动时,它会根据需要执行升级步骤并继续引导。

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/6098

(0)
安屠生的头像安屠生
上一篇 2022年11月15日 下午5:50
下一篇 2022年11月16日 上午10:40

相关推荐

  • IIS配置Url重写实现http自动跳转https的重定向方法

    需要准备的工具和环境: 操作流程 配置URL分为全局和非全局,下图,可以看到URL重写组件内容。 选择某一个站点中的URL重写,我们称之为单独的非全局。直接选择IIS的可以配置全局,所以这里要依靠你自己的判断和选择。 打开Url重写工具 在右侧点击添加,然后选择空白规则,然后进行规则的配置。 规则命令如下 这个也是网上一大堆教程最神的地方,很多东西都是缺失的…

    2023年2月21日
    1.9K00
  • Nginx配置及命令详解

    Nginx命令行 nginx -s 对应参数 信号 含义 stop TERM 强制关闭整个服务 null INT 强制关闭整个服务 quit QUIT 优雅地关闭整个服务 reopen USR1 重新打开日志记录 reload HUP 重新读取配置文件,并且优雅地退出老的worker nginx.conf重要的指令块 核心功能都在于http{}指令块里,ht…

    2022年6月17日
    2.0K00
  • LNMP黄金架构的搭建

    LNMP组合工作流程 LNMP工作流是用户通过浏览器输入域名访问Nginx web服务,Nginx判断请求是静态请求则由Nginx返回给用户。如果是动态请求(如.php结尾),那么Nginx会将该请求通过FastCGI接口发送给PHP引擎(php-fpm进程)进行解析,如果该动态请求需要读取mysql数据库,php会继续向后读取数据库,最终Nginx将获取的…

    2022年7月7日
    2.1K00
  • 已解决:Strict Standards: Non-static method cls_image::gd_version() should not be called statically in…..

    iis网站更换php版本后,遇到问题 原因:PHP升级到5.4X以后的兼容性语法问题 解决: 将php版本换回5.4之前的版本就可以解决

    2023年3月17日
    1.6K00
  • Zabbix 首页提示PHP A session had already been started – ignoring session_start()

    zabbix打开首页报错,如下图 说时迟,那时快。 我赶紧百度了一下error ★ A session had already been started – ignoring session_start() 如果这后面没有任何文件,你需要这样去解决 如果出现 ★ A session had already been start…

    2023年4月28日
    1.7K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信