rabbitmq 数据迁移

本文由编程笔记#小编为大家整理,主要介绍了实践丨RabbitMQ通过shovel插件迁移数据相关的知识,希望对你有一定的参考价值。

前言

生产环境中会遇到RabbitMQ数据迁移的场景,例如:切换云服务厂商、不同Region之间数据迁移、新搭建RabbitMQ实例,数据需要同步至新的RabbitMQ实例。

前提条件:

源RabbitMQ实例打开了shovel插件。

目的RabbitMQ实例打开了shovel插件。

源实例与目的实例能够网络互通。

当前以华为云不同Region下RabbitMQ实例数据迁移为例子。已在华为云北京Region、上海Region各创建一个集群实例。现在需要将上海Region的数据迁移至北京Region。

操作步骤

1
上海Region、北京Region实例都打开Shovel插件。上海Region的实例有3个队列,且每个队列中有10000条数据:

技术图片

2

上海Region、北京Region实例都绑定好公网ip。

3

在北京Region新申请一台单机实例,绑定好公网ip,打开Shovel插件,用作数据中转。

4

登录单机实例的管理控制台,Admin -> Shovel Management。

技术图片

5

配置Shovel

技术图片

6

配置完成后如下图:

技术图片

7

通过Shovel Status可以看Shovel的状态

技术图片

8

此时上海Region的RabbitMQ实例中的队列数据已经为0,而北京Region的RabbitMQ实例中的队列数据为10000条,可以看到数据已经完整迁移过来了。

技术图片

▲上海

技术图片

▲上海

9

此时再向上海Region的队列生产数据,数据也会被实时同步至北京。

技术图片

▲同步中:上海

技术图片


▲同步中:北京

技术图片

▲同步完成后:上海

技术图片

▲同步完成后:北京

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
根据提供的引用内容,进行rabbitmq数据迁移的步骤如下: 1. 首先,登录到dhmq管理平台(http://172.19.40.57:8080/login),查看dhgate_translate_priority队列信息和所属集群id,以确认迁移前的集群和节点信息,方便后续的SQL改库操作。\[1\] 2. 检查环境变量,确保执行命令时不会报错。设置Erlang的环境变量ERLANG_HOME为D:\erl\erl10.0.1\erts-10.0.1,ERLANG_SERVICE_MANAGER_PATH为D:\erl\erl10.0.1\erts-10.0.1\bin。设置RabbitMQ的环境变量RABBITMQ_SERVER为D:\rabbitmq\rabbitmq_server-3.7.7。\[2\] 3. 执行命令重新设定路径启动。在控制台中进入RabbitMQ安装目录下的sbin目录,使用命令rabbitmq-service.bat remove删除已安装的RabbitMQ服务。然后设置新路径,将RABBITMQ_BASE设置为D:\RabbitMQ\Data。最后重新安装RabbitMQ服务,使用命令rabbitmq-service.bat install。\[2\] 4. 查看管理界面。启动RabbitMQ管理页面,使用命令rabbitmq-plugins.bat enable rabbitmq_management。然后在本地浏览器中登录管理页面,访问http://localhost:15672,默认账号为guest/guest。\[2\] 5. 修改酒仙桥读写环境的队列相关数据库。连接到dhmq_dev(QA环境数据库ip:172.30.100.13,用户和密码:dhmq_dev),并执行以下SQL语句来修改queue和exchange: - 修改td_dhmq_queue表中的queue:使用update语句将queuenode中的IP地址从'172.19.224.22_'替换为'172.19.40.71_',将'172.19.224.25_'替换为'172.19.40.72_',并将clusterid从'5'修改为'8',其中queuename为'dhgate_translate_priority'。 - 修改td_dhmq_exchange表中的exchange:使用update语句将brokernode中的IP地址从'172.19.224.22_'替换为'172.19.40.71_',将'172.19.224.25_'替换为'172.19.40.72_',并将clusterid从'5'修改为'8',其中ename为'dhgate_translate_priority'。\[3\] 以上是进行rabbitmq数据迁移的步骤。请根据具体情况进行操作。 #### 引用[.reference_title] - *1* *3* [RabbitMQ队列迁移](https://blog.csdn.net/want_you_gogo/article/details/120934191)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [RabbitMQ数据日志存放以及数据迁移](https://blog.csdn.net/lutan20/article/details/128289661)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值