本文以RDS MySQL间的周期性全量迁移为例,介绍周期性全量调度的配置流程和注意事项。

说明 支持全量数据迁移的数据源均支持周期性全量调度功能,详情请参见支持的数据库和迁移类型

前提条件

周期性全量调度功能仅在华北1(青岛)、华北2(北京)、华北3(张家口)、华南1(深圳)和华东2(上海)地域支持,要求源和目标RDS MySQL实例需处于上述地域。如未创建实例,请参见创建RDS MySQL实例

背景信息

周期性全量调度是数据迁移的高级功能,可根据调度策略和周期配置,定期地将源库中的结构和存量数据迁移至目标库中,通过该功能可以帮助您构建更加灵活的数据仓库。更多详情,请参见周期性全量调度策略说明

注意事项

如果源数据库没有主键或唯一约束,且所有字段没有唯一性,可能会导致目标数据库中出现重复数据。

功能限制

  • DTS支持结构迁移的对象为表、视图、触发器、存储过程、存储函数。
    说明 在结构迁移时,DTS会将视图、存储过程或函数中的DEFINER转换为INVOKER
  • 不支持迁移源库的user信息。迁移完成后,如果您需要调用目标库的视图、存储过程或函数,则需对调用者授予读写权限。

数据库账号的权限要求

数据库 结构迁移 全量迁移
源RDS实例 读写权限 读写权限
目标RDS实例 读写权限 读写权限
说明 关于数据库账号的创建和授权方法,请参见创建RDS MySQL数据库账号

费用说明

迁移类型 链路配置费用 公网流量费用
结构迁移和全量数据迁移 不收费。 通过公网将数据迁移出阿里云时将收费,详情请参见产品定价

操作步骤

本文以华北1(青岛)地域的RDS MySQL实例为例,介绍配置流程。

  1. 登录数据传输控制台
  2. 在左侧导航栏,单击数据迁移
  3. 迁移任务列表页面顶部,本案例选择华北1(青岛)地域。
    选择华北1地域
  4. 单击页面右上角的创建迁移任务
  5. 配置迁移任务的源库和目标库连接信息。
    RDS MySQL间迁移
    类别 配置 说明
    任务名称 DTS会自动生成一个任务名称,建议配置具有业务意义的名称(无唯一性要求),便于后续识别。
    源库信息 实例类型 选择RDS实例
    实例地区 选择源RDS实例所属的地域,本案例选择为华北1(青岛)地域。
    数据库账号 填入源RDS实例的数据库账号,权限要求请参见数据库账号的权限要求
    数据库密码 填入该数据库账号的密码。
    说明 源库信息填写完毕后,您可以单击数据库密码后的测试连接来验证填入的信息是否正确。如果填写正确则提示测试通过;如果提示测试失败,单击测试失败后的诊断,根据提示调整填写的源库信息。
    连接方式 根据需求选择非加密连接SSL安全连接。如果设置为SSL安全连接,您需要提前开启RDS实例的SSL加密功能,详情请参见设置SSL加密
    目标库信息 实例类型 选择RDS实例
    实例地区 选择目标RDS实例所属的地域,本案例选择为华北1(青岛)地域。
    数据库账号 填入目标RDS实例的数据库账号,权限要求请参见数据库账号的权限要求
    数据库密码 填入该数据库账号的密码。
    说明 目标库信息填写完毕后,您可以单击数据库密码后的测试连接来验证填入的信息是否正确。如果填写正确则提示测试通过;如果提示测试失败,单击测试失败后的诊断,根据提示调整填写的目标库信息。
    连接方式 根据需求选择非加密连接SSL安全连接。如果设置为SSL安全连接,您需要提前开启RDS实例的SSL加密功能,详情请参见设置SSL加密
  6. 配置完成后,单击页面右下角的授权白名单并进入下一步
  7. 配置周期性调度策略并选择迁移对象。
    1. 配置周期性调度策略。
      选择周期调度策略
      配置 说明
      迁移类型 选中结构迁移全量数据迁移
      说明 请勿选中增量数据迁移,否则将不显示周期性全量调度功能开关。
      是否启用周期性全量调度功能 单击对应的滑块开启该功能。
      调度策略
      • 多副本模式
      • 重新同步模式
      • 基于时间戳的全量模式
      说明 关于调度策略的说明、使用限制及使用场景请参见调度策略说明
      调度生效日期 单击图标,然后选择调度生效的起止日期,最大范围为365天。
      调度周期 选择调度周期为小时,然后根据提示设置具体的调度时间点。
      说明
      • DTS在执行全量数据迁移时将占用源库和目标库一定的读写资源,可能会导致数据库的负载上升,因此建议您充分评估源库和目标库的性能,同时将调度时间点设定在业务低峰期。
      • 设置完成后,可单击任务失败策略右侧的查看计划调度时间来查看设置的调度时间是否符合预期。
      任务失败策略 根据业务需求,选择:
      • 单次任务失败后,不再执行后续的调度任务
      • 单次任务失败后,忽略失败,并执行下一次调度任务
    2. 选择迁移对象。
      选择迁移对象
      配置 说明
      迁移对象

      迁移对象框中单击待迁移的对象,然后单击向右小箭头图标将其移动至已选择对象框。

      说明
      • 迁移对象选择的粒度为库、表、列。
      • 默认情况下,迁移完成后,迁移对象的名称保持不变。如果您需要变更迁移对象在目标实例中的名称,需要使用对象名映射功能,详情请参见库表列映射
      • 如果使用了对象名映射功能,可能会导致依赖这个对象的其他对象迁移失败。
    3. 单击页面右下角的高级配置,指定时间戳字段。
      说明 当选择调度策略基于时间戳的全量模式时,才需要执行本步骤。
      指定时间戳字段
  8. 单击页面右下角的预检查并启动
    注意
    • 在迁移任务正式启动之前,会先进行预检查。只有通过预检查,DTS才能迁移数据。
    • 如果预检查失败,单击具体检查项后的提示图标,查看失败详情。根据提示修复后,重新进行预检查。
  9. 预检查通过后,单击下一步
  10. 在弹出的购买配置确认对话框,选择链路规格并选中数据传输(按量付费)服务条款
  11. 单击购买并启动,迁移任务将在最近的调度周期(即下次调度时间)正式开始。
    周期性调度任务状态
    说明 该迁移任务将在调度生效时间的截止时间自动结束。如果调度生效时间内需要停止该任务,请单击停止周期性全量

执行结果

本次全量迁移任务调度完成后,迁移任务状态变更为已完成,DTS将等待下次调度时间并再次执行全量数据迁移。

任务状态