如何使用CDM完成整库迁移
操作场景
本章节介绍使用CDM整库迁移功能,将本地MySQL数据库迁移到云服务RDS中。
当前CDM支持将本地MySQL数据库,整库迁移到RDS上的MySQL、PostgreSQL或者Microsoft SQL Server任意一种数据库中。这里以整库迁移到RDS上的MySQL数据库(云数据库 MySQL)为例进行介绍,使用流程如下:
3) 创建RDS连接
4)创建整库迁移作业
前提条件
1)用户拥有EIP配额。用户已购买RDS数据库实例,该实例的数据库引擎为MySQL。
2)本地MySQL数据库可通过公网访问。如果MySQL服务器是在本地数据中心或第三方云上,需要确保MySQL可以通过公网IP访问,或者是已经建立好了企业内部数据中心到华为云的VPN通道或专线。
3)已获取本地MySQL数据库和RDS上MySQL数据库的IP地址、数据库名称、用户名和密码。
如果用户对本地数据源的访问通道做了SSL加密,则CDM无法通过弹性IP连接数据源。
创建MySQL连接
在集群管理界面,单击集群后的“作业管理”,选择“连接管理 > 新建连接”,进入连接器类型的选择界面,如图所示。选择“MySQL”后单击“下一步”,配置MySQL连接的参数。
单击“显示高级属性”可查看更多可选参数,具体请参见4.20 配置关系数据库连接。这里保持默认,必填参数如表8-8所示。
表1-1 MySQL连接参数
参数名 | 说明 | 取值样例 |
---|---|---|
名称 | 输入便于记忆和区分的连接名称。 | mysqllink |
数据库服务器 | MySQL数据库的IP地址或域名。 | 192.168.0.1 |
端口 | MySQL数据库的端口。 | 3306 |
数据库名称 | MySQL数据库的名称。 | sqoop |
用户名 | 拥有MySQL数据库的读、写和删除权限的用户。 | admin |
密码 | 用户的密码。 | - |
使用Agent | 是否选择通过Agent从源端提取数据。 | 是 |
Agent | 单击“选择”,选择连接Agent中已创建的Agent。 | - |
单击“保存”回到连接管理界面。如果保存时出错,一般是由于MySQL数据库的安全设置问题,需要设置允许CDM集群的EIP访问MySQL数据库。
创建RDS连接
在连接器类型界面选择“云数据库 MySQL”后单击“下一步”,配置连接参数:
名称:用户自定义连接名称,例如:“rds_link”。
数据库服务器、端口:配置为RDS上MySQL数据库的连接地址、端口。
数据库名称:配置为RDS上MySQL数据库的名称。
用户名、密码:登录数据库的用户和密码。
创建RDS连接时,“使用本地API”设置为“是”时,可以使用MySQL的LOAD DATA功能加快数据导入,提高导入数据到MySQL的性能。由于RDS上的MySQL默认没有开启LOAD DATA功能,所以同时需要修改MySQL实例的参数组,将“local_infile”设置为“ON”,开启该功能。如果“local_infile”参数组不可编辑,则说明是默认参数组,需要先创建一个新的参数组,再修改该参数值,并应用到RDS的MySQL实例上。
创建整库迁移作业
1)两个连接创建完成后,选择“整库迁移 > 新建作业”,开始创建迁移任务,如图所示,
作业名称:用户自定义整库迁移的任务名称。
源端作业配置
源连接名称:选择创建MySQL连接中的“mysql_link”。
模式或表空间:选择从本地MySQL的哪个数据库导出数据。
目的端作业配置
目的连接名称:选择创建RDS连接中的“rds_link”。
模式或表空间:选择将数据导入到RDS的哪个数据库。
自动创表:选择“不存在时创建”,当RDS数据库中没有本地MySQL数据库里的表时,CDM会自动在RDS数据库中创建那些表。
导入前清空数据:选择“是”,当RDS数据库中存在与本地MySQL数据库重名的表时,CDM会清除RDS中重名表里的数据。高级属性里的可选参数保持默认即可。
2)单击“下一步”,进入选择待迁移表的界面,您可以选择全部或者部分表进行迁移。
3)单击“保存并运行”,CDM会立即开始执行整库迁移任务。作业任务启动后,每个待迁移的表都会生成一个子任务,单击整库迁移的作业名称,可查看子任务列表。
4)单击作业操作列的“历史记录”,可查看该作业的历史执行记录、读取和写入的统计数据。
- 点赞
- 收藏
- 关注作者
评论(0)