本文介绍Microsoft Azure Database for MySQL数据库迁移到阿里云的步骤及注意事项。
前提条件
源端及目标端 |
要求 |
相关参考 |
|
源端 |
Microsoft Azure Database for MySQL实例 |
|
|
目标端 |
阿里云云数据库RDS MySQL实例 |
|
注意事项
-
结构迁移不支持event的迁移。
- DTS在执行全量数据迁移时将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升,在数据库性能较差、规格较低或业务量较大的情况下(例如源库有大量慢SQL、存在无主键表或目标库存在死锁等),可能会加重数据库压力,甚至导致数据库服务不可用。因此您需要在执行数据迁移前评估源库和目标库的性能,同时建议您在业务低峰期执行数据迁移(例如源库和目标库的CPU负载在30%以下)。
- 如果源库中待迁移的表没有主键或唯一约束,且所有字段没有唯一性,可能会导致目标数据库中出现重复数据。
-
对于数据类型为FLOAT或DOUBLE的列,DTS会通过
ROUND(COLUMN,PRECISION)
来读取该列的值。如果没有明确定义其精度,DTS对FLOAT的迁移精度为38位,对DOUBLE的迁移精度为308位,请确认迁移精度是否符合业务预期。 -
DTS会自动地在阿里云RDS MySQL中创建数据库,如果待迁移的数据库名称不符合阿里云RDS的定义规范,您需要在配置迁移任务之前在阿里云RDS MySQL中创建数据库。
说明 关于阿里云RDS的定义规范和创建数据库的操作方法,请参见 创建数据库 。
- 对于迁移失败的任务,DTS会触发自动恢复。在您将业务切换至目标实例前,请务必先结束或释放该任务,避免该任务被自动恢复后,导致源端数据覆盖目标实例的数据。
-
DTS会尝试恢复七天之内迁移失败任务。因此业务切换至目标实例前,请务必结束或释放该任务,或者将DTS访问目标实例账号的写权限用
revoke
命令回收掉。避免该任务被自动恢复后,源端数据覆盖目标实例的数据。 -
如果使用了对象名映射功能后,依赖这个对象的其他对象可能迁移失败。
-
建议源和目标库的MySQL版本保持一致,以保障兼容性。
费用说明
迁移类型 |
链路配置费用 |
公网流量费用 |
结构迁移和全量数据迁移 |
不收费。 |
通过公网将数据迁移出阿里云时将收费,详情请参见 计费概述 。 |
增量数据迁移 |
收费,详情请参见 计费概述 。 |
操作步骤
-
登录 DTS控制台 。
-
在左侧菜单栏单击 数据迁移 ,然后单击 创建任务 。
-
填写源库和目标库信息,具体参数配置说明如下:
库类别
参数
说明
源库
数据库类型
源数据库类型,本示例选择 MySQL 。
接入方式
源库实例接入DTS的方式,本示例选择 公网IP 。
实例地区
公网接入,选择任意地区即可,本示例选择 华东1(杭州) 。
如果您的实例配置了访问控制,则请先为DTS服务开放访问权限后,再配置数据迁移任务。DTS服务的IP地址段信息,请参见 迁移、同步或订阅本地数据库时需添加的IP白名单 。
主机名或IP地址
Microsoft Azure Database for MySQL数据库的 服务器名称 。
端口
Microsoft Azure Database for MySQL数据库的服务端口(需开放至公网),默认为 3306 。
数据库账号
Microsoft Azure Database for MySQL数据库的高权限账号。
数据库密码
Microsoft Azure Database for MySQL数据库的高权限账号的密码。
目标库
数据库类型
目标实例的类型,本示例选择 MySQL 。
接入方式
目标实例接入DTS的方式,本示例选择 云实例 。
实例地区
目标实例所在的地域。
RDS实例ID
对应地区下的实例ID,这里选择想要迁移到的目标实例的ID。
数据库账号
目标实例的高权限账号。
数据库密码
目标实例的高权限账号对应的密码。
连接方式
有 非加密传输 和 SSL安全连接 两种连接方式,选择SSL安全加密连接会显著增加阿里云RDS MySQL实例的CPU消耗。
-
填写完毕后单击 测试连接以进行下一步 ,在 DTS服务器访问授权 确定窗口中,再次单击 测试连接以进行下一步 。
-
在 配置任务对象及高级配置 步骤,选择 迁移类型 。
说明为保证迁移数据的一致性,建议选择 库表结构迁移 + 全量数据迁移 + 增量数据迁移 。
-
在 源库对象 框中将想要迁移的数据库选中,单击 ,移动到 已选择对象 框。
-
单击 下一步高级配置 ,保持默认配置即可。
-
单击 下一步保存任务并预检查 ,等待预检查结束。
说明如果检查失败,可以根据错误项的提示进行修复,然后重新启动任务。
-
单击 下一步购买 ,在 购买 页,勾选 《数据传输(按量付费)服务条款》 并单击 购买并启动 。
说明结构迁移和全量迁移任务暂不收费,增量迁移根据链路规格按小时收费。
-
等待迁移任务完成即可。