本文介绍使用DTS将RDS MySQL迁移至POLARDB MySQL的任务配置流程。
背景信息
使用阿里云数据传输服务(DTS),您可以实现RDS MySQL到POLARDB MySQL的数据迁移。通过DTS增量迁移的存储引擎,可以在源RDS实例不停机的情况下,将数据迁移到目标POLARDB
MySQL集群。
下面详细介绍如何使用DTS实现RDS MySQL实例与POLARDB集群间的数据迁移。
迁移权限要求
当使用DTS进行RDS实例与POLARDB集群间的数据迁移时,源RDS实例的账号需拥有读写权限,目的POLARDB集群的账号需拥有迁移对象的ALL权限。
创建迁移账号
迁移任务配置时,需要提供源RDS实例及目的POLARDB集群的迁移账号。迁移账号的相关权限详见上面的 迁移权限要求一节。如果尚未创建迁移账号,您可以参考 RDS实例账号创建和POLARDB集群账号创建。先在源实例及目的集群中创建迁移账号,并将要迁移的库表的读写权限授权给上面创建的账号。
配置迁移任务
当上面的所有前置条件都配置完成后,可以开始正式的数据迁移。下面详细介绍迁移任务配置流程。
- 登录DTS控制台。
- 在页面左侧,选择数据迁移。
- 单击右上角创建迁移任务。
- (可选)填写任务名称。
DTS 为每个任务自动生成一个任务名称,任务名称没有唯一性要求。您可以根据需要修改任务名称,建议为任务配置具有业务意义的名称,便于后续的任务识别。
- 填写源实例信息。
- 实例类型:选择RDS实例。
- 实例地区:选择RDS实例所在的地域。
- RDS实例ID:选择配置迁移的源RDS实例的实例ID。
- 数据库账号:连接RDS实例的账号。
- 数据库密码:以上数据库账号的密码。
- 单击测试连接,确认DTS可以连接到源RDS实例。
- 填写目标POLARDB集群信息。
- 实例类型:选择POLARDB。
- 实例地区:选择POLARDB集群所在的地域。
- POLARDB实例ID:选择配置迁移的目标POLARDB集群的集群ID。
- 数据库账号:连接POLARDB集群的账号。
- 数据库密码:以上数据库账号的密码。
- 单击测试连接,确认DTS可以连接到目标POLARDB集群。
- 单击右下角的授权白名单并进入下一步。这个步骤DTS会将DTS服务器的IP地址添加到源RDS实例及目标POLARDB的白名单中,避免因为RDS实例及POLARDB设置了白名单,DTS服务器连接不上实例导致迁移失败。
- 选择迁移类型和迁移对象。
- 迁移类型:
- 结构迁移
DTS 会将迁移对象的结构定义迁移到目标集群。目前 DTS 支持结构迁移的对象包括:表。其他对象如视图、同义词、触发器、存储过程、存储函数、包、自定义类型等暂不支持。
- 全量数据迁移
DTS 会将源数据库迁移对象的存量数据全部迁移到目标集群。
- 增量迁移
DTS 会将迁移过程中源实例的数据变更同步到目标集群。如果迁移期间进行了 DDL 操作,那么这些结构变更不会迁移到目标集群。
如果只需要进行全量迁移,那么迁移类型选择:结构迁移+全量数据迁移。
如果需要进行不停机迁移,那么迁移类型选择:结构迁移+全量数据迁移+增量数据迁移。
说明 结构迁移和全量数据迁移均不收费,增量迁移需要收费。
- 迁移对象:选择要迁移的对象,单击向右的箭头,将选中的对象添加到右侧。
迁移对象的选择粒度细化为:库、表、列三个粒度。默认情况下,对象迁移到目标POLARDB集群后,对象名跟源RDS实例一致。如果您迁移的对象在源实例跟目标集群上名称不同,那么需要使用DTS提供的对象名映射功能,详细使用方式可以参考库表列映射。
说明
- 暂时不支持对系统表的迁移。
- 目标集群中不能有和迁移对象同名的对象。将鼠标移至右侧框中的对象,单击编辑,即可修改迁移后的对象名。
- 单击右下角的预检查并启动,成功后单击下一步。
如果预检查失败,可以单击具体检查项后的检查结果,查看具体的失败详情,并根据失败原因修复后,重新进行预检查。
- 确认DTS购买信息,阅读并勾选服务条款,单击立即购买并启动。
当预检查通过后,可以启动迁移任务,任务启动成功后,可以在任务列表中查看迁移的具体状态及迁移进度。
如果选择了增量迁移,那么进入增量迁移阶段后,源库的更新写入都会被DTS同步到目标POLARDB集群。迁移任务不会自动结束。如果用户只是为了迁移,那么建议在增量迁移无延迟的状态时,源库停写几分钟,等待增量迁移再次进入无延迟状态后,停止掉迁移任务,直接将业务切换到目标POLARDB集群上即可。
- 单击目标地域,查看迁移状态。迁移完成时,状态为已完成。
至此,完成RDS实例到POLARDB数据迁移任务配置。
评论