MYSQL CDC Endpoint
MYSQL CDC Endpoint v0.28.0+ 实时捕获和分发MYSQL数据库变化。监听数据库insert/update/delete事件,根据数据库.表名
路由到规则链进行处理。
提示
- 该组件是扩展组件,需要引入额外的扩展库:rulego-components-etl (opens new window)
# Type
endpoint/mysql_cdc
# 启动配置
字段 | 类型 | 说明 | 默认值 |
---|---|---|---|
server | string | mysql服务器地址 | 无 |
user | string | 用户名 | 无 |
password | string | 密码 | 无 |
fromOldest | bool | 是否从最旧binlog同步,否则从最新的binlog和位置同步 | 无 |
dbs | []string | 数据库 | 无 |
includeTables | []string | 定义将被包含的表,如果为空,则包含所有表。如:test.users。也支持正则表达式:如:[".\.canal","test."] | 空数组 |
excludeTables | []string | 定义从includeTables中排除的表 。如:mysql.users。也支持正则表达式:如:"mysql\..*" | 空数组 |
executionPath | string | mysqldump执行路径,如mysqldump或/usr/bin/mysqldump等... | 无 |
charset | string | 字符集,如:utf8 | 无 |
flavor | string | mysql或mariadb | 无 |
heartbeat | int | 心跳单位秒 | 无 |
readTimeout | int | 读超时单位秒 | 无 |
# 路由参数
根据触发的数据库名.表名
,路由到对应的规则链。支持正则表达式。*代表匹配所有表
# 输出参数
输入规则链的RuleMsg数据,格式如下:
- metadata
字段 | 类型 | 说明 |
---|---|---|
tableFullName | string | 触发的数据库.表名 |
tableName | string | 触发的表名 |
tableSchema | string | 触发的数据库名 |
action | string | 触发的动作insert/update/delete |
columnNames | []string | 列名列表 |
pkColumnNames | []string | 主键列名列表 |
data 格式:[]Row,其中Row为:[]interface{}(每一列值)。 如果是update,则格式为:[更新前Row,更新后Row]
msgType
- insert:插入事件
- update:更新事件
- delete:删除事件
- dataType JSON
在 GitHub 上编辑此页 (opens new window)
上次更新: 2024/12/22, 03:38:12