自建Oracle迁移至RDS MySQL
更新时间:2024-08-14
本文主要介绍自建 Oracle 实例和云数据库 RDS MySQL 实例之间的数据迁移。
前提条件
- 自建 Oracle 数据库的版本为 10g、11g、12c、18c、19c,且不支持 CDB、RAC 架构。
- 目标 RDS MySQL 数据库的版本需要大于等于 5.6。
- 已创建目标端 RDS MySQL 实例。创建方式,请参见 创建 MySQL 实例。
限制说明
- 待同步的表需具备主键或唯一约束,且字段具有唯一性,否则可能会导致目标数据库中出现重复数据。
- 增量同步使用物化视图日志(mlog)方案时:若需要同时选择全量和增量迁移,源端不可存在迁移表相关的物化视图日志;若只选择增量迁移,需要提前在源端创建迁移表相关的物化视图日志。
- 增量同步使用归档日志(logminer)方案时:需按要求开启归档模式和 Supplemental Logging,详情参见 对象映射配置。
- 增量同步不支持同步关系型数据库的 DDL 语句。
数据库账号权限要求
数据库 | 结构迁移 | 全量迁移 | 增量迁移 |
---|---|---|---|
源端 | DBA权限 | DBA权限 | DBA权限 |
目标端 | 读写权限 | 读写权限 | 读写权限 |
说明
自建Oracle数据库,数据库账号创建及授权方法请参见 CREATE USER 和 GRANT 语法。
操作步骤
- 登录 DTS 控制台。
- 点击 创建数据传输任务 进入 DTS 创建任务页面,详情参见 购买流程。
- 创建任务成功后自动返回任务列表页面,选择新创建的任务,点击 更多操作—>配置任务。
-
在配置任务页面,配置源库及目标库信息,本文以 公网 接入方式为例介绍配置流程。
配置流程 类别 配置 说明 任务基本属性 任务名称 DTS 会自动生成一个任务名称,建议配置具有业务意义的名称(无唯一性要求),便于后续识别。 源端连接设置 主机名/IP 填入源端 Oracle 数据库的访问地址,本示例中填入公网地址。 端口 填入源端 Oracle 数据库的服务端口(需开放至公网)。 账号 填入源端 Oracle 数据库的账号,权限要求详请参见数据库账号的权限要求。 密码 填入该数据库账号对应的密码。 Service Name 填写 Oracle 数据库的 Service Name 或 SID。 导出类型 指定 DTS 服务从 Oracle 读取数据所采用的字符集,可选值为:默认、UTF8 和 GBK。当选择 默认 时,DTS 将使用下列语句查询得到的 Oracle 实例使用的字符集作为导出类型:select userenv('language') as charset from dual -
配置完成后,点击页面下方的 授权白名单进入下一步。
如果源或目标数据库是 BCC/BBC/DCC 自建或 IDC 自建数据库或其他云数据库,则需要您手动添加对应地区 DTS 服务的 IP 地址,以允许来自 DTS 服务器的访问。
警告:
DTS 自动添加或您手动添加 DTS 服务的 IP 地址段可能会存在安全风险,一旦使用本产品代表您已理解和确认其中可能存在的安全风险,并且需要您做好基本的安全防护,包括但不限于加强账号密码强度防范、限制各网段开放的端口号、内部各 API 使用鉴权方式通信、定期检查并限制不需要的网段等等。
-
配置任务对象映射。
配置 说明 迁移类型 支持结构迁移、全量迁移和增量同步。 同步语句选择 增量同步阶段,支持指定需要同步的 SQL 语句类型,可多选。 迁移方案 增量同步当前支持两种可选的迁移方案:物化视图日志(mlog)方案和归档日志方案(logminer)。若选择归档日志(logminer)方案,需要满足如下要求: - Oracle 数据库需开启归档模式(ARCHIVELOG),详情参见 ARCHIVELOG。
- Oracle 数据库需开启 Supplemental Logging,且要求开启数据库级别的 Minimal Supplemental Logging,对同步表要求开启 ALL COLUMN LOGGING,详情参见 Supplemental Logging。
限制传输速度 根据实际情况,选择是否对全量迁移和增量同步任务进行更细粒度的限流策略设置(设置 每秒迁移的行数 和 每秒迁移的数据量),以缓解目标库压力。详情参见:迁移限速。 重试时间 源端/目标端实例无法连接后自动重试,用户可根据实际情况调整重试时间,或者在源端和目标端的实例释放后尽快释放 DTS 实例。 传输对象 Oracle 仅支持手动选择,在页面左侧选择需要迁移的库表,库表信息将会被自动添加到页面右侧。 -
上述配置完成后,点击页面下方的 保存并预检查。
说明
- 在迁移任务正式启动之前,会先进行预检查。只有预检查通过后,才能成功启动迁移任务。
- 如果预检查失败,请查看失败检查项的提示,并根据提示修复后重新进行预检查。
-
如果预检查产生警告:
- 对于不可以忽略的检查项,请查看失败检查项的提示,并根据提示修复后重新进行预检查。
- 对于可以忽略无需修复的检查项,您可以点击 强制通过,在弹出的窗口中勾选风险确认信息并点击 确定,跳过告警检查项重新进行预检查。如果选择屏蔽告警检查项,可能会导致数据不一致等问题,给业务带来风险。
- 前置校验提示校验成功后,点击 立即开启任务。
- 迁移任务正式开始,您可以在任务列表页面查看具体进度。