tidb cdc同步到mysql某几张表的某些行数据

【 TiDB 使用环境】生产环境
【 TiDB 版本】5.3.0
【复现路径】
【遇到的问题:问题现象及影响】
1、cdc5.3.0支持行过滤吗?
2、tidb集群5.3.0能安装8.1的cdc吗?

cdc支持表过滤,行的话应该是不支持的。
要安装8.1的cdc的话,你搞个高版本的tiup 部署呗

1.强烈tidb ticdc 同版本使用,否则会有非预期的兼容性问题
2.关于 filter 有如下选项
3.# 事件过滤器规则

事件过滤器的详细配置规则可参考:https://docs.pingcap.com/zh/tidb/stable/ticdc-filter

第一个事件过滤器规则

[[filter.event-filters]]

matcher = [“test.worker”] # matcher 是一个白名单,表示该过滤规则只应用于 test 库中的 worker 表

ignore-event = [“insert”] # 过滤掉 insert 事件

ignore-sql = [“^drop”, “add column”] # 过滤掉以 “drop” 开头或者包含 “add column” 的 DDL

ignore-delete-value-expr = “name = ‘john’” # 过滤掉包含 name = ‘john’ 条件的 delete DML

ignore-insert-value-expr = “id >= 100” # 过滤掉包含 id >= 100 条件的 insert DML

ignore-update-old-value-expr = “age < 18” # 过滤掉旧值 age < 18 的 update DML

ignore-update-new-value-expr = “gender = ‘male’” # 过滤掉新值 gender = ‘male’ 的 update DML

第二个事件过滤器规则

[[filter.event-filters]]

matcher = [“test.fruit”] # 该事件过滤器只应用于 test.fruit 表

ignore-event = [“drop table”, “delete”] # 忽略 drop table 的 DDL 事件和 delete 类型的 DML 事件。需要注意的是,在更新 TiDB 中聚簇索引的列值时,TiCDC 会将一个 UPDATE 事件拆分成为 DELETE 和 INSERT 事件,TiCDC 无法将该类事件识别为 UPDATE 事件,因此无法正确地进行过滤。

ignore-sql = [“^drop table”, “alter table”] # 忽略以 drop table 开头的,或者包含 alter table 的 DDL 语句

ignore-insert-value-expr = “price > 1000 and origin = ‘no where’” # 忽略包含 price > 1000 和 origin = ‘no where’ 条件的 insert DML

https://docs.pingcap.com/zh/tidb/stable/ticdc-changefeed-config#ticdc-changefeed-配置文件说明