tencent cloud

日志服务

动态与公告
产品动态
公告
新手指引
产品简介
产品概述
产品优势
地域和访问域名
规格与限制
基本概念
购买指南
计费概述
产品定价
按量计费(后付费)
欠费说明
清理日志服务资源
成本优化
常见问题
快速入门
一分钟入门指南
入门指南
使用 Demo 日志快速体验 CLS
操作指南
资源管理
权限管理
日志采集
指标采集
日志存储
指标存储
检索分析(日志主题)
检索分析(指标主题)
仪表盘
数据处理
投递与消费
监控告警
云产品中心
DataSight 独立控制台
历史文档
实践教程
日志采集
检索分析
仪表盘
监控告警
投递和消费
成本优化
开发者指南
通过 iframe 内嵌 CLS(旧方案)
通过 Grafana 使用 CLS
API 文档
History
Introduction
API Category
Making API Requests
Topic Management APIs
Log Set Management APIs
Index APIs
Topic Partition APIs
Machine Group APIs
Collection Configuration APIs
Log APIs
Metric APIs
Alarm Policy APIs
Data Processing APIs
Kafka Protocol Consumption APIs
CKafka Shipping Task APIs
Kafka Data Subscription APIs
COS Shipping Task APIs
SCF Delivery Task APIs
Scheduled SQL Analysis APIs
COS Data Import Task APIs
Data Types
Error Codes
常见问题
健康监测问题解释
采集相关
检索分析相关
其他问题
服务等级协议
CLS 政策
隐私协议
数据处理和安全协议
联系我们
词汇表

订阅 MySQL Binlog

PDF
聚焦模式
字号
最后更新时间: 2025-12-03 11:22:42
CLS 日志服务支持远端非侵入式订阅 MySQL 二进制日志(binlog),该日志以事件形式记录了对 MySQL 数据库执行更改的所有操作。适用于对增量的数据库改动进行实时查询、分析与审计的需求场景。本文将为您介绍如何订阅 MySQL Binlog。

前提条件

已创建 MySQL 数据库且开启 ROW 模式的 Binlog 功能。
创建一个具有 REPLICATION SLAVEREPLICATION CLIENTSELECT 权限的 MySQL 账号。

操作步骤

步骤1:选择日志主题

创建新的日志主题
使用现有的日志主题
2. 在左侧导航栏中,单击概览,进入概览页面。
3. 快速接入中,选择数据导入,单击 MySQL Binlog 数据订阅,进入订阅任务配置流程。



4. 创建日志主题页面,根据您的实际需求,输入日志主题名称,配置日志保存时间等信息,然后点击下一步



2. 在左侧导航栏中,单击日志主题,选择需要投递的日志主题,单击日志主题名称,进入日志主题详情页面。
3. 选择采集配置页签,在 MySQL Binlog 订阅配置栏下单击新增,进入订阅任务配置流程。




步骤2:配置 MySQL

配置 MySQL 步骤中,配置如下参数:



参数
是否必填
说明
MySQL 类型
目标订阅的 MySQL 类型,当前支持:
自建 MySQL
MySQL 实例
若 MySQL 类型为腾讯云数据库 MySQL 腾讯云 TDSQL-C MySQL,可通过下拉选项选择需要订阅的目标云上 MySQL 实例。
注意:
当前仅支持选择与日志主题相同地域的云上 MySQL 实例,若需订阅不同地域 MySQL 实例的 Binlog,MySQL 类型请选择自建 MySQL,并通过公网订阅 Binlog。
访问方式
若 MySQL 类型为自建 MySQL,支持选择通过内网地址或公网地址访问您的 MySQL。
所属网络
若 MySQL 类型为自建 MySQL,且访问方式为通过内网地址访问,您需指定 MySQL 实例所在的 VPC 网络。
注意:
仅支持与目标日志主题所在地域相同的 VPC 网络。
网络服务类型
若 MySQL 类型为自建 MySQL,且访问方式为通过内网地址访问,需指定目标 MySQL 的网络服务类型:
若您的 MySQL 需通过 CLB 访问,请选择 CLB。
若您的 MySQL 所在服务器可直接访问,请选择 CVM。
内网/公网访问地址
若 MySQL 类型为自建 MySQL,基于您选择访问方式,填写 MySQL 的内网访问地址或公网访问地址。
MySQL 端口
若 MySQL 类型为自建 MySQL,填写 MySQL 的端口。
用户名
填写访问 MySQL 的用户名。
注意:
账号需开启以下权限:REPLICATION SLAVEREPLICATION CLIENTSELECT
密码
填写访问 MySQL 的密码。

步骤3:配置订阅规则

配置订阅规则步骤中,配置如下参数:



参数
是否必填
说明
订阅规则名称
指定当前订阅规则的名称。
起始位置
指定 Binlog 订阅的起始位置。支持通过以下3种方式定义起始位置:
最新位置:从最新位置开始采集 Binlog。
指定位置:从指定的位置开始采集 Binlog。
指定 GTID:从指定的 GTID(事务 ID)位置开始采集 Binlog。
Binlog 文件名
若起始位置选择为指定位置,需指定 Binlog 的文件名,例如:mysql-bin.000005。
开始的 Binlog 位置
若起始位置选择为指定位置,需指定在 Binlog 文件中开始采集的位置。例如:需要采集 mysql-bin.000005中的第 N 条日志的起始下标,则指定位置为第 N-1条日志的 position+size(position 是 Binlog 日志在 Binlog 文件中的起始下标,size 是该条 Binlog 日志大小)。若需要从文件的开头进行采集,指定位置为0。
注意:
请确保填写位置正好为一条 Binlog 日志的起始下标,否则可能导致订阅失败。
开始的 GTID
若起始位置选择为指定 GTID,需指定起始的 GTID(事务 ID)。
事件类型
需要采集的 Binlog 事件类型,支持以下4种事件类型:
DDL:数据定义语言
Insert:插入
Update:更新
Delete:删除
事件元数据
支持勾选以下6种 Binlog 相关元数据与日志一起上传:
log_name:Binlog 文件名
position:Binlog 日志在 Binlog 文件中的起始下标
size:Binlog 日志大小
server_id:Slave ID
gtid:事务 ID
task_id:当前订阅任务的 ID
注意:
DDL 事件的 Binlog 不支持 size 元数据。
时间戳来源
支持选择以下2种时间作为所采集 Binlog 日志的时间戳:
采集时间:Binlog 日志被采集的时间。
事件时间:Binlog 日志对应的事件发生时间。
数据库表白名单
开启后可采集指定数据库以及数据库表,关闭则代表采集所有的数据库以及数据库表。支持配置多个白名单,每个白名单需配置以下信息:
数据库名称:需要采集的 Binlog 所关联的数据库名称。
数据库表:需要采集的 Binlog 所关联的数据库表名,支持填写多个。
注意:
DDL 事件的 Binlog 日志采集不受白名单限制。
数据库黑名单
开启后可忽略不采集指定数据库以及数据库表。支持配置多个黑名单,每个黑名单需配置以下信息:
数据库名称:需要忽略不采集的 Binlog 所关联的数据库名称。
数据库表:需要忽略不采集的 Binlog 所关联的数据库表名,支持填写多个。
注意:
DDL 事件的 Binlog 日志采集不受名单限制。
平铺时间数据
若开启,会将不同的事件拆分为多条日志,并在每条日志中对被操作的字段进行平铺。例如:在数据库操作中执行了两次操作,一次更新 a 和 b 字段,一次更新 d 和 e 字段,则会生成两条日志,分别的值为 a:xxx, old_a:xxx, b:xxx, old_b:xxx 和 d:xxx, old_d:xxx, e:xxx, old_e:xxx。
若关闭,会将事件数据以数组+JSON格式集中打包到 old_data 和 data 两个字段中。例如: 在数据库操作中执行了两次操作,一次更新 a 和 b 字段,一次更新 d 和 e 字段,日志值为 old_data:[{a:xxx,b:xxx}, {d:xxx,e:xxx}], data:[{a:xxx,b:xxx}, {d:xxx,e:xxx}]。
预览 Binlog
单击后将从数据库中获取第一条符合订阅类型的 Binlog 日志,展示相应的内容。

步骤4:索引配置

1. 单击下一步,进入“索引配置”页面。
2. 在“索引配置”页面,设置如下信息。配置详情请参考 索引配置

注意:
检索必须开启索引配置,否则无法检索。

步骤5:检索分析

至此,您已完成 MySQL Binlog 订阅的配置,下一步即可开始使用日志的检索与分析,详情请参见 检索分析

日志字段说明

固定字段

字段
描述
db
数据库名称
table
表名称
query
query
type
事件类型
after
当 type 为 insert、update、delete 时,通过 json 包裹所有受到影响的字段以及结果值
before
当 type 为 update 时,通过 json 包裹所有受影响的字段以及影响产生前的值
errorCode
当 type 为 DDL 时,展示执行 errorcode
executionTime
当 type 为 DDL 时,展示执行耗时

元数据字段

说明:
需在 Binlog 订阅规则中指定后才会上传。
字段
描述
log_name
Binlog 文件名
position
Binlog 日志在 Binlog 文件中的起始下标
size
Binlog 日志大小
server_id
Slave ID
gtid
事务 ID
task_id
订阅规则任务 ID

其他操作

管理订阅任务

完成 MySQL Binlog 订阅任务配置后,您可在日志主题详情页的采集配置中查看并管理所有已创建的 MySQL Binlog 订阅任务。





帮助和支持

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

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

文档反馈