Table of Contents
openGauss学习笔记-316 openGauss 数据迁移-MySQL迁移-迁移MySQL数据库至openGauss-反向迁移
316.1 功能介绍
反向迁移是指将openGauss端产生的增量数据迁移至mysql端。
316.2 原理简介
debezium opengauss connector的source端,监控openGauss的xlog日志,并将数据的DML操作以AVRO格式写入到kafka;
debezium opengauss connector的sink端,从kafka读取AVRO格式的数据,在mysql端按表并行回放,从而完成数据的DML操作从openGauss在线迁移至mysql。
316.3 特性优势
反向迁移可满足用户业务迁移逃生的诉求,保持源端、目标端两个库并行运行,在目标端数据库出问题后应用能及时切回源端数据库。
316.4 操作步骤
反向迁移gs_replicate依赖MySQL一键式迁移工具gs_rep_portal,可实现反向迁移的安装、启动、停止、卸载整个过程。
316.4.1 下载gs_rep_portal
316.4.2 解压,并进入portal对应目录
316.4.3 修改gs_rep_portal配置文件
配置文件位于config目录内,反向迁移相关的配置文件主要包含如下两个,相关参数含义简要说明如下:
- toolspath.properties
- migrationConfig.properties
316.4.4 安装
其中workspace.id表示迁移任务id,取值为数字和小写字母的组合,不同的id区分不同的迁移任务,不同迁移任务可并行启动。若使用已存在的workspace.id,并修改其中的配置,请在portal/workspace/${workspace.id}/config/路径下修改对应的配置文件。
316.4.5 启动
316.4.6 停止
316.4.7 卸载
316.5 注意事项
-
当前支持openGauss IUD操作(insert、update、delete)产生的增量数据迁移至MySQL。
-
openGauss需要3.1.0及以上版本。
-
反向迁移依赖于openGauss的逻辑复制,仅限能进行逻辑复制的用户进行操作。
-
openGauss 的GUC参数设置要求为:wal_level = logical。
-
需要调整pg_hba.conf以允许复制(这里的值取决于实际的网络配置以及用于连接的用户):
-
Kafka中以AVRO格式存储数据,AVRO字段名称命名规则为: 以[A-Za-z_]开头,随后仅包含[A-Za-z0-9_] 因此,对于openGauss中的标识符命名,包括表名、列名等,需满足上述命名规范,否则迁移会报错。
👍 点赞,你的认可是我创作的动力!
⭐️ 收藏,你的青睐是我努力的方向!
✏️ 评论,你的意见是我进步的财富!