本章节主要介绍如何迁移MySQL数据库数据到GoldenDB。
背景信息
在控制台创建 MySQL 数据库迁移数据至 GoldenDB 数据库的迁移任务,可以通过创建全量任务将源端数据库的存量业务数据迁到 GoldenDB 数据库中。支持源端为单主库、单备库、主备库。
前提条件
为源端 MySQL 和目标端 GoldenDB 创建专用于数据迁移项目的数据库用户,并为其赋予相关权限。相关权限说明参考 数据库权限准备 。
使用限制
- 源端数据库在迁移过程中请勿执行表结构变更的 DDL 语句,否则可能造成数据迁移该表的失败;
- 在迁移过程中请关闭目标端的外键与触发器;
- 目前支持的 MySQL 数据库版本为 V5.6、 V5.7和 V8.0;
- 仅支持库名、表名和列名为 ASCII 码且不包含特殊字符(包括.-;|)的命名。
数据类型映射
| MySQL 数据库 | GoldenDB 数据库 |
|---|---|
| INTEGER | INTEGER |
| TINYINT | TINYINT |
| MEDIUMINT | MEDIUMINT |
| BIGINT | BIGINT |
| SMALLINT | SMALLINT |
| DECIMAL | DECIMAL |
| NUMERIC | NUMERIC |
| FLOAT | FLOAT |
| REAL | REAL |
| DOUBLE PRECISION | DOUBLE PRECISION |
| BIT | BIT |
| CHAR | CHAR |
| VARCHAR | VARCHAR |
| BINARY | BINARY |
| VARBINARY | VARBINARY |
| BLOB | BLOB |
| TEXT | TEXT |
| DATE | DATE |
| DATETIME | DATETIME |
| TIMESTAMP | TIMESTAMP |
| TIME | TIME |
| YEAR | YEAR |
操作步骤
创建迁移任务

创建迁移任务 1)登录 SM 控制台。
2)在左侧导航栏,点击 任务管理 下面的 任务列表 。
3)在任务列表页面,点击右上角上面的 新增 ,新增一个同步任务。
在新建任务中,选择源端和目标端后,配置各项参数

参数
描述
任务名称
任务名的名称,使用字符串进行命名
源数据库
在下拉框中选择要进行同步的源端数据源,需要先在数据源中创建数据源。
目标数据库
在下拉框中选择要进行同步的源端数据源,需要先在数据源中创建数据源。
同步类型
迁移直接选择全量。
是否开启比对
选择是时,在全量迁移过程中进行数据比对,选择否时,不进行数据比对。
是否结构迁移
在全量迁移前先做结构迁移,选择是需要做结构迁移,选择否不需要做结构迁移,但需要保证已经存在需要同步的库表结构,否则在迁移回放过程中会报错,并将该表加入黑名单。
是否自动绑定组件
任务创建完成后是否自动绑定采集回放组件,选择是则自动绑定,选择否后再保存任务时需要手动选择要做迁移任务的采集回放组件,否则无法启动任务。开启比对后,比对组件也需要自动绑定或手动绑定。
同步白名单
配置需要同步的库表信息,表名分号分隔,支持正则语法。如果打开大小写敏感,库表名请按实际填写;如果关闭大小写敏感,库表名使用小写。
同步黑名单
配置不需要同步的库表信息,表名分号分隔,支持正则语法。如果打开大小写敏感,库表名请按实际填写;如果关闭大小写敏感,库表名使用小写。对于既满足白名单又在黑名单中的表,将不会进行数据同步。
参数配置完成后,点击 下一步 ,处理基础配置信息

参数
描述
映射规则
选择该任务配置的库表列映射规则,库表列映射规则需提前配置。
是否保存全量快照点
如果该全量完成后,后期需要做增量任务,则需要记录全量时的快照点信息,选择是,则记录该全量快照点信息,选择否,则不记录。
全量采集总并行度
所有的采集线程数。
全量采集表间并发数
在采集时,对于每张表的数据抽取时,每张表的抽取并发度。如果提升性能,可以适度提高该值。
表分段的每段大小
在采集某张表时对表进行拆分采集,每一段拆分的数据量大小,提升性能使用。
回放唯一性重复处理方式
遇到目的端主键冲突时处理方式,分为忽略/替换/日志写入/中止退出4种方式,默认为替换
点击 可行性检查 ,选择是否做可行性检查

点击 目标端高级配置

参数
描述
大小写敏感
是否开启库名、表名、列名的大小写敏感。
设置字段默认值
支持设置库表指定字段的默认值。
参数配置完成后,点击 保存




