通过数据订阅功能,您可以实时订阅源库的增量数据,轻松帮助业务实现轻量级缓存更新、业务异步解耦、含ETL逻辑的数据实时同步等场景。本文将介绍如何创建RDS MySQL数据订阅通道(新版)。

注意事项

  • 由于使用gh-ost或pt-online-schema-change等类似工具执行在线DDL变更不会被订阅到,客户端在将消费到的数据写入目标表时可能会因为表结构不一致而导致写入失败。
  • 如果订阅的源数据库还处于其他任务中(例如该数据库还存在于某个正在运行的数据迁移任务中),您可能会订阅到订阅对象以外的数据,此类场景中,您需要手动在订阅客户端中过滤掉不需要的数据。

操作步骤

  1. 购买数据订阅通道,详情请参见购买数据订阅通道
  2. 登录数据传输控制台
  3. 在左侧导航栏,单击数据订阅
  4. 数据订阅列表页面上方,选择订阅通道所属地域。选择地域
  5. 定位至已购买的数据订阅通道,单击配置订阅通道
  6. 配置数据订阅的源库信息和网络类型。数据订阅源实例
    类别 配置 说明
    订阅名称 DTS会自动生成一个订阅名称,建议配置具有业务意义的名称(无唯一性要求),便于后续识别。
    源库信息 实例类型 根据源实例的类型进行选择,本案例选择RDS实例
    说明 当源库为自建数据库时,您还需要执行相应的准备工作,详情请参见准备工作概览
    数据库类型 购买数据订阅通道时选择的订阅实例类型,不可变更。
    实例地区 购买数据订阅通道时选择的源实例地域,不可变更。
    RDS实例ID 选择待订阅的RDS实例ID。
    说明 暂不支持以只读实例、临时实例作为数据订阅的源实例。
    数据库账号 填入待订阅的RDS数据库账号。
    说明
    • 账号需要具备REPLICATION CLIENT、REPLICATION SLAVE、SHOW VIEW和待订阅对象的SELECT权限。
    • 当源RDS实例的数据库类型为MySQL 5.5MySQL 5.6时,无需配置数据库账号数据库密码
    数据库密码 填入待订阅的RDS数据库账号对应的密码。
    网络类型
    • 经典网络
    • 专有网络

    设置数据订阅实例所属的网络类型。

    说明
    • 建议配置同部署数据订阅客户端的ECS实例属于同一网络。例如ECS是专有网络,那么此处的网络类型选择为专有网络并指定ECS所属的专有网络虚拟交换机
    • 通过内网地址进行数据订阅时,网络延迟最小。
    • 经典网络

      如果设置为经典网络,那么无需其他配置。关于经典网络介绍请参见经典网络

    • 专有网络

      如果设置为专有网络,您还需要选择专有网络虚拟交换机。关于专有网络介绍请参见专有网络

  7. 上述配置完成后,单击授权白名单并进入下一步,详情请参见下表所示。
    源库实例类型 说明
    RDS MySQL 此步骤会将DTS服务器的IP地址自动添加至RDS MySQL的白名单中,用于保障DTS服务器能够正常连接源实例。
    ECS上的自建MySQL数据库 此步骤会将DTS服务器的IP地址自动添加至ECS实例的内网入方向规则中,用于保障DTS服务器能够正常连接源实例。
    • 有公网IP的自建MySQL数据库
    • 通过专线/VPN网关/智能网关接入的自建MySQL数据库
    如果源库进行了白名单安全设置,您需要将DTS服务器的IP地址加入至自建数据库的白名单安全设置中,详情请参见迁移、同步或订阅本地数据库时需添加的IP白名单
  8. 在弹出的创建订阅账号对话框中,等待账号创建完成后单击下一步自动创建订阅账号
    说明 只有当源RDS实例的数据库类型为MySQL 5.5MySQL 5.6时,才需要经过此步骤。在此步骤中,DTS会在源实例中创建用于数据订阅的数据库账号。
  9. 配置需要订阅的数据类型和订阅对象。选择订阅类型和对象
    配置 说明
    需要订阅的数据类型
    • 数据更新

      订阅已选择对象的增量数据更新,包含数据的INSERT、DELETE和UPDATE操作。

    • 结构更新

      订阅整个实例所有对象的结构创建、删除及修改,您需要使用数据订阅客户端过滤所需的数据。

    说明
    • 如果选择整个库作为订阅对象,那么该库中新增对象的增量数据也可以被订阅到。
    • 如果选择某个表作为订阅对象,那么只有这个表的增量数据可以被订阅到。此时如果需要加入一个新的表作为订阅对象,您需要将其加入至订阅对象中,详情请参见修改订阅对象
    订阅对象

    订阅对象框中将想要订阅的对象选中,单击向右小箭头图标将其移动到已选择对象框。

    说明 订阅对象支持选择的粒度为库、表。
  10. 上述配置完成后,单击页面右下角的保存并预检查
    说明
    • 在订阅任务正式启动之前,会先进行预检查。只有预检查通过后,才能成功启动订阅任务。
    • 如果预检查失败,单击具体检查项后的提示图标,查看失败详情。根据提示修复问题后,重新进行预检查。
  11. 预检查对话框中显示预检查通过后,关闭预检查对话框。

配置完成后,数据订阅通道会进入初始化阶段,这个阶段一般会持续1分钟左右。初始化完成后即可进行新增消费组与消费订阅数据的操作。

下一步

  1. 新增消费组
  2. 使用Kafka客户端消费订阅数据