扫码阅读
手机扫码阅读

云原生丨DBSwitch数据迁移实践

286 2023-09-21



Cloud Native

ESG服务BU云原生交付中心、云基地

在云原生上的尝试、调研与分享



本期内容

DBSwitch数据迁移的实践

DBSwitch是一个异构数据库迁移工具,能够提供源端数据库向目的端数据库的批量迁移同步功能,而且支持数据的全量和增量方式同步,在日常项目中应用广泛。

鉴于DBSwitch方便全面的功能优势,本期我们就跟大家分享一些DBSwitch数据迁移的实践内容。

部署

环境准备

服务器:Linux或Windows

数据库:MySQL(与安装包中的配置一致)

jre:1.8以上

安装包:dbswitch-release-1.6.16.tar.gz

(使用maven打包,定制包待提供)

安装包部署

解压安装包:tar -zxvf dbswitch-release-1.6.16.tar.gz

运行程序-Linux:`pwd`/dbswitch-release-1.6.16/bin/start.sh

运行程序-windows:`pwd`/dbswitch-release-1.6.16/bin/start.cmd

使用

登录

访问地址: http://ip:9088

用户名:admin

密码:123456

使用步骤-gauss迁移到gauss

建立源端数据库的连接 -> 建立目的断数据库的连接 -> 配置任务 -> 发布任务 -> 手动/系统调度执行任务 -> 查看调度记录 -> 数据目录查看数据结果;

Step 1:数据库连接-GaussDB

本地测试时,使用的是openGauss 数据库;

(docker pull enmotech/opengauss:3.0.0)

GaussDB,选择Postgres数据库类型。

连接完成后,可以在数据目录查看所连接数据源,shema、table等信息。

Step 2:配置任务-GaussDB迁移到GaussDB

Step 3:任务调度-手动

发布任务后,点击执行 ⬇

Step 4:调度记录

使用步骤-MySQL迁移到gauss

建立源端数据库的连接 -> 建立目的断数据库的连接 -> 配置任务 -> 发布任务 -> 手动/系统调度执行任务 -> 查看调度记录 -> 数据目录查看数据结果;

Step 1:数据库连接-MySQL

本地测试时,使用的是两个数据库:

openGauss 数据库(docker pull enmotech/opengauss:3.0.0)

MySQL数据库(docker pull mysql:8.0.31)

GaussDB选择Postgres数据库类型,MySQL数据库选择Mysql类型。

Step 2:配置任务-MySQL迁移到GaussDB

Step 3:任务调度-手动

发布任务后,点击执行 ⬇

Step 4:调度记录

postgres

gauss差异说明

DBSwitch采用的是SQL导入导出的方式执行任务。导入到目标数据源时,先清除目标数据源的同名表数据,然后执行导入的SQL语句。

清除目标数据源的同名表数据时,postgres采用的是TRUNCATE TABLE {schema}.{table} RESTART IDENTITY;

而openGauss不支持此命令,需对DBSwitch做出相应修改。

以上就是本期关于DBSwitch数据库迁移的实践过程,希望可以帮助到你~


DBSwitch数据库迁移,学会了吗?

你感兴趣也可以试试~

如果你有更好的办法或疑问

欢迎加入社群一起讨论哦⬇

本期作者

刘健


原文链接: http://mp.weixin.qq.com/s?__biz=Mzg5MzUyOTgwMQ==&mid=2247517409&idx=1&sn=413cf0283fc94d7d63f6130f0abf16f1&chksm=c02fbf47f758365106b3deeac4e98023faa0495b3509f1333e1199369e76daf6ea339f874de8#rd