tencent cloud

数据传输服务

动态与公告
产品动态
公告
产品简介
产品概述
数据迁移功能描述
数据同步功能描述
数据订阅(Kafka 版)功能描述
产品优势
支持的地域
规格说明
购买指南
计费概述
变更配置说明
欠费说明
退费说明
快速入门
数据迁移操作指导
数据同步操作指导
数据订阅操作指导(Kafka 版)
准备工作
业务评估
网络准备
添加 DTS IP 地址至对接数据库白名单
DTS 服务权限准备
数据库及权限准备
配置自建 MySQL 系的 Binlog
数据迁移
数据迁移支持的数据库
云数据库跨账号实例间迁移
迁移至 MySQL 系列
迁移至 PostgreSQL
迁移至 MongoDB
迁移至 SQL Server
迁移至腾讯云分布式缓存数据库
任务管理
数据同步
数据同步支持的数据库
云数据库跨账号实例间同步
同步至 MySQL 系列
同步至 PostgreSQL
同步至 MongoDB
同步至 Kafka
任务管理
数据订阅(Kafka 版)
数据订阅支持的数据库
MySQL 系列数据订阅
TDSQL PostgreSQL 数据订阅
MongoDB 数据订阅
任务管理
消费管理
前置校验不通过处理方法
检查项汇总
割接说明
监控与告警
支持的监控指标
告警通知功能
通过控制台配置指标告警和事件告警
通过 API 配置指标告警和事件告警
运维管理
配置系统维护时间
任务状态扭转说明
实践教程
本地数据库同步上云
构建双向同步数据结构
构建多对一同步数据结构
构建多活数据中心
数据同步冲突策略如何选择
使用 CLB 代理将其他账号下的数据库迁移至本账号下
通过云联网方式迁移自建数据库至腾讯云数据库
DTS 性能调优最佳实践
常见问题
数据迁移
数据同步
数据订阅 Kafka 版常见问题
数据订阅正则表达式
错误处理
常见错误处理
连通性测试不通过
校验项结果不通过或者出现警告
云联网接入配置源数据时无法选择子网
迁移慢或者进度卡住
数据同步有延时
数据订阅延迟过高
数据消费异常
API 文档
History
Introduction
API Category
Making API Requests
(NewDTS) Data Migration APIs
Data Sync APIs
Data Consistency Check APIs
(NewDTS) Data Subscription APIs
Data Types
Error Codes
DTS API 2018-03-30
相关协议
服务等级协议

创建 TDSQL MySQL 数据订阅

PDF
聚焦模式
字号
最后更新时间: 2026-01-30 11:38:59
本场景介绍使用 DTS 创建腾讯云数据库 TDSQL MySQL 的数据订阅任务操作指导。

前提条件

已准备好待订阅的腾讯云数据库,并且数据库版本符合要求,请参见 数据订阅支持的数据库
已在源端实例中开启 binlog。
已在源端实例中创建订阅账号,需要账号权限如下:REPLICATION CLIENT、REPLICATION SLAVE、PROCESS 和全部对象的 SELECT 权限。 具体授权语句如下:
create user '迁移账号' IDENTIFIED BY '账号密码';
grant SELECT, REPLICATION CLIENT,REPLICATION SLAVE,PROCESS on *.* to '迁移账号'@'%';
flush privileges;

约束限制

订阅的消息内容目前默认保存时间为最近1天,超过保存时间的数据会被清除,请用户及时消费,避免数据在消费完之前就被清除。
数据消费的地域需要与订阅实例的地域相同。
当前不支持 geometry 相关的数据类型。
数据订阅源是 TDSQL MySQL版 时,不支持直接执行授权语句授权,所以订阅账号的权限需要在 TDSQL 控制台 单击实例 ID,进入账号管理页中添加。 订阅账号所需要的权限即上述授权语句中所示权限,对于为订阅账号进行 __tencentdb__ 的授权操作,在控制台修改权限弹窗中选择对象级特权,勾选所有权限即可。
数据订阅源是 TDSQL MySQL版 时,不支持订阅 二级分区 表。
如果在订阅任务启动前源库创建了二级分区表,则校验任务不通过。
如果在订阅任务运行中源库创建了二级分区表,那么订阅到二级分区表的数据是子表数据(订阅对象选择整库或者整实例,源库在订阅任务启动后创建的二级分区表也会被订阅,导致最终的结果订阅了二级分区表)。因为二级分区表的底层是通过子表实现,所以不建议用户在订阅任务过程中创建二级分区表,否则会导致如下示例的订阅数据差异。 示例:源库表名为“test_a”是二级分区表,那么 DTS 订阅到该表的 DML 的表名为“test_a_tdsql_subp0/test_a_tdsql_subp1”。
订阅任务过程中,如果进行修改订阅对象等操作会发生任务重启,重启后可能会导致用户在 Kafka 客户端消费数据时出现重复。
DTS 是按最小数据单元进行传输的,增量数据每标记一个 checkpoint 位点就是一个数据单元,如果重启时,刚好一个数据单元传输已完成,则不会导致数据重复;如果重启时,一个数据单元还正在传输中,那么再次启动后需要重新拉取这个数据单元,以保证数据完整性,这样就会导致数据重复。
用户如果对重复数据比较关注,请自行在消费数据时设置去重逻辑。

注意事项

数据订阅源是 TDSQL MySQL版 的订阅任务,各个分片的 DDL 操作都会被订阅并投递到 Kafka,所以对于一个分表的 DDL 操作,会出现重复的 DDL 语句。例如,实例 A 有3个分片,订阅了一个分表 tableA,那么对于表 tableA 的 DDL 语句会订阅到3条。
Kafka 中的每条消息的消息头中都带有分片信息,以 key/value 的形式存在消息头中,key 是 ShardId,value 是 SQL 透传 ID,可根据 SQL 透传 ID 区分该消息来自哪个分片。用户可以在 TDSQL 控制台 > 实例列表 > 分片管理中查看 SQL 透传 ID。


支持订阅的 SQL 操作

操作类型
支持的 SQL 操作
DML
INSERT、UPDATE、DELETE
DDL
CREATE DATABASE、DROP DATABASE、CREATE TABLE、ALTER TABLE、DROP TABLE、RENAME TABLE

操作步骤

1. 登录 DTS 控制台,在左侧导航选择数据订阅,单击新建数据订阅
2. 在新建数据订阅页,选择相应配置,单击立即购买
计费模式:支持包年包月和按量计费。
地域:地域需与待订阅的数据库实例订阅保持一致。
数据库:请根据具体数据库类型进行选择。
版本:选择 Kafka 版,支持通过 Kafka 客户端直接消费。
订阅实例名称:编辑当前数据订阅实例的名称。
3. 购买成功后,返回数据订阅列表,单击操作列的配置订阅对刚购买的订阅进行配置,配置完成后才可以进行使用。
4. 在配置数据库订阅页面,选择相应配置,单击保存并下一步
实例:选择对应数据库实例。支持选择只读/灾备实例,但推荐选择主实例,订阅服务对源库的压力非常小。
数据库账号:添加订阅实例的账号和密码,账号具有订阅任务需要的权限,包括 REPLICATION CLIENT、REPLICATION SLAVE、PROCESS 和全部对象的 SELECT 权限。
Kafka 分区数量:设置 kafka 分区数量,增加分区数量可提高数据写入和消费的速度。单分区可以保障消息的顺序,多分区无法保障消息顺序,如果您对消费到消息的顺序有严格要求,请选择 kafka 分区数量为1。
5. 在订阅类型和对象选择页面,选择订阅类型,单击保存并下一步。 订阅类型,包括数据更新、结构更新和全实例。
数据更新:订阅选择对象的数据更新,包括数据 INSERT、UPDATE、DELETE 操作。
结构更新:订阅实例中全部对象的结构创建、修改和删除。
全实例:包括该订阅实例的全部对象的数据更新和结构更新。
6. 在预校验页面,预校验任务预计会运行2分钟 - 3分钟,预校验通过后,单击启动完成数据订阅任务配置。
说明
如果校验失败,请参考 校验不通过处理方法 进行修复,并重新进行校验。
7. 单击启动后,订阅任务会进行初始化,预计会运行3分钟 - 4分钟,初始化成功后进入运行中状态。
8. 新增消费组,数据订阅 Kafka 版支持用户创建多个消费组,进行多点消费。数据订阅 Kafka 版消费依赖于 Kafka 的消费组,所以在消费数据前需要创建消费组。
9. 订阅实例进入运行中状态之后,就可以开始消费数据。Kafka 的消费需要进行密码认证,具体示例参考 数据消费 Demo,我们提供了多种语言的 Demo 代码,也对消费的主要流程和关键的数据结构进行了说明。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈