文档

使用创建反向任务功能

更新时间:

本文为您介绍如何使用数据传输服务DTS(Data Transmission Service)的创建反向任务功能,实现数据库容灾场景下的数据回传。

前提条件

  • 已创建存储空间大于业务数据库已使用的灾备数据库,建议灾备数据比业务数据大10%。

  • 已在业务数据库和灾备数据库中创建用于数据同步的账号。权限要求,请参见RDS MySQL实例间的同步RDS SQL Server间的同步

    重要

    灾备数据库的账号需要具备额外的权限:

    • SQL Server间的同步实例:目标库账号需具备sysadmin权限,您可以使用超级权限账号通过EXEC sp_addsrvrolemember @loginame = N'<账号名>', @rolename = N'sysadmin';命令进行授权。

    • MySQL间的同步实例:目标库账号还需具备REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW和SELECT权限。授权方法,请参见MySQL官方说明文档

注意事项

  • 仅SQL Server数据库间或MySQL数据库间的同步实例支持创建反向实例,且该反向实例的同步类型只勾选了增量同步

  • 创建反向实例前直接写入到原同步实例目标库的数据,不会被同步。

  • 反向实例创建成功后会立即进行预检查,预检查通过后会进行增量数据采集,增量数据写入模块不会运行。

  • 每个同步实例仅支持创建一个对应的反向实例,且当反向实例启动后,原实例将无法直接启动。

  • 不支持为跨国家和跨境的同步实例创建反向实例。

  • 请确保待同步的表具备主键或唯一约束,并且字段具有唯一性,否则可能会导致部分数据重复。

  • 请根据业务数据库出现异常后的预估恢复时间,合理设置数据库Binlog的保存时间。

  • 若原实例为Serverless实例,则创建的反向实例的计费方式将为按量付费,且规格为micro;若原实例的计费方式为包年包月或按量付费,则创建的反向实例的计费方式和规格默认与原实例相同。

  • 若原实例为跨地域的同步实例,则需要将同步任务列表的地域切换为正向实例源库对应的地域,才可以看到创建的反向实例。

  • 创建的反向实例暂停期间也会收取相应的费用。

  • 在业务数据库出现异常无法连接的情况下,DTS实例的运行状态重试中属于正常现象。

操作步骤

  1. 根据业务需求,创建业务数据库到灾备数据库的正向同步实例。

    请合理选择实例的规格,并根据业务数据库出现异常后的预估恢复时间,设置源库、目标库无法连接后的重试时间。正向同步实例的创建方法,请参见RDS MySQL实例间的同步RDS SQL Server间的同步

  2. 等待正向同步实例的运行状态处于运行中,创建反向实例。

    1. 同步任务列表找到创建的正向同步实例。

    2. 在目标实例右侧,选择更多设置 > 创建反向任务

    3. 在弹出的提示对话框,单击确定

      等待反向实例预检查完成,运行状态处于同步初始化中

      说明
      • 若您未开启自动刷新功能,则需要手动单击操作上方的刷新按钮,以刷新同步实例的运行状态

      • 若预检查失败,请单击查看原因,然后单击预检查失败项后查看详情,根据提示修复后重新进行预检查。

    4. 反向实例创建好后,暂无需操作。

  3. 当业务数据库出现异常无法连接时,执行如下操作来恢复您的业务。

    1. 暂停原实例。

      1. 同步任务列表页面,找到原实例。

      2. 在目标实例右侧,选择更多设置 > 暂停任务

      3. 在弹出的提示对话框,单击确定

      4. 在弹出的暂停任务成功对话框,单击确定

    2. 将业务切换至灾备数据库。

    3. 启动反向实例。

      1. 同步任务列表页面,单击生成的反向实例ID。

      2. (可选)在左侧导航栏,单击任务管理

      3. 实例进展区域,单击增量写入模块。

      4. 基本信息页签,单击操作右侧的启动增量写入

      5. 在弹出的提示对话框,单击确定

  4. 当业务数据库恢复后,执行如下操作切换业务数据库并恢复同步实例。

    1. 将业务切换回原来的业务数据库。

    2. 等待反向实例无延迟后,暂停反向实例。

      反向实例会将业务直接写入灾备数据库的数据同步到原业务数据库。

    3. 等待反向实例暂停成功后,启动原来的正向同步实例。

常见问题

  • 创建正向同步实例时,如何选择规格?

    建议您先选择最小的规格(micro)。待创建好反向实例后,您可以根据业务量升级实例规格。升级规格的方法,请参见升级任务的链路规格

  • 业务数据库恢复后,DTS实例处于失败状态,如何处理?

    您可以启动DTS实例。操作方法,请参见启动DTS实例

  • 本页导读 (1)