自建Oracle迁移至RDS MySQL
所有文档
menu

数据传输服务 DTS

自建Oracle迁移至RDS MySQL

产品详情自助选购

本文主要介绍自建 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 USERGRANT 语法。

操作步骤

  1. 登录 DTS 控制台
  2. 点击 创建数据传输任务 进入 DTS 创建任务页面,详情参见 购买流程
  3. 创建任务成功后自动返回任务列表页面,选择新创建的任务,点击 更多操作—>配置任务
  4. 在配置任务页面,配置源库及目标库信息,本文以 公网 接入方式为例介绍配置流程。

    配置流程
    类别 配置 说明
    任务基本属性 任务名称 DTS 会自动生成一个任务名称,建议配置具有业务意义的名称(无唯一性要求),便于后续识别。
    源端连接设置 主机名/IP 填入源端 Oracle 数据库的访问地址,本示例中填入公网地址。
    端口 填入源端 Oracle 数据库的服务端口(需开放至公网)。
    账号 填入源端 Oracle 数据库的账号,权限要求详请参见数据库账号的权限要求。
    密码 填入该数据库账号对应的密码。
    Service Name 填写 Oracle 数据库的 Service Name 或 SID。
    导出类型 指定 DTS 服务从 Oracle 读取数据所采用的字符集,可选值为:默认UTF8GBK
    当选择 默认 时,DTS 将使用下列语句查询得到的 Oracle 实例使用的字符集作为导出类型:
    select userenv('language') as charset from dual
  5. 配置完成后,点击页面下方的 授权白名单进入下一步

    如果源或目标数据库是 BCC/BBC/DCC 自建或 IDC 自建数据库或其他云数据库,则需要您手动添加对应地区 DTS 服务的 IP 地址,以允许来自 DTS 服务器的访问。

    警告:

    DTS 自动添加或您手动添加 DTS 服务的 IP 地址段可能会存在安全风险,一旦使用本产品代表您已理解和确认其中可能存在的安全风险,并且需要您做好基本的安全防护,包括但不限于加强账号密码强度防范、限制各网段开放的端口号、内部各 API 使用鉴权方式通信、定期检查并限制不需要的网段等等。

  6. 配置任务对象映射。

    配置 说明
    迁移类型 支持结构迁移、全量迁移和增量同步。
    同步语句选择 增量同步阶段,支持指定需要同步的 SQL 语句类型,可多选。
    迁移方案 增量同步当前支持两种可选的迁移方案:物化视图日志(mlog)方案和归档日志方案(logminer)。若选择归档日志(logminer)方案,需要满足如下要求:
    • Oracle 数据库需开启归档模式(ARCHIVELOG),详情参见 ARCHIVELOG
    • Oracle 数据库需开启 Supplemental Logging,且要求开启数据库级别的 Minimal Supplemental Logging,对同步表要求开启 ALL COLUMN LOGGING,详情参见 Supplemental Logging
    限制传输速度 根据实际情况,选择是否对全量迁移和增量同步任务进行更细粒度的限流策略设置(设置 每秒迁移的行数每秒迁移的数据量),以缓解目标库压力。详情参见:迁移限速
    重试时间 源端/目标端实例无法连接后自动重试,用户可根据实际情况调整重试时间,或者在源端和目标端的实例释放后尽快释放 DTS 实例。
    传输对象 Oracle 仅支持手动选择,在页面左侧选择需要迁移的库表,库表信息将会被自动添加到页面右侧。
  7. 上述配置完成后,点击页面下方的 保存并预检查

    说明

    • 在迁移任务正式启动之前,会先进行预检查。只有预检查通过后,才能成功启动迁移任务。
    • 如果预检查失败,请查看失败检查项的提示,并根据提示修复后重新进行预检查。
    • 如果预检查产生警告:

      • 对于不可以忽略的检查项,请查看失败检查项的提示,并根据提示修复后重新进行预检查。
      • 对于可以忽略无需修复的检查项,您可以点击 强制通过,在弹出的窗口中勾选风险确认信息并点击 确定,跳过告警检查项重新进行预检查。如果选择屏蔽告警检查项,可能会导致数据不一致等问题,给业务带来风险。
  8. 前置校验提示校验成功后,点击 立即开启任务
  9. 迁移任务正式开始,您可以在任务列表页面查看具体进度。
上一篇
PostgreSQL为源的迁移
下一篇
MongoDB为源的迁移