sync_diff_inspector v2.0如何排除部分表

【TiDB 使用环境】测试/ Poc
【TiDB 版本】7.1.5
【操作系统】
【部署方式】云上部署(什么云)/机器部署(什么机器配置、什么硬盘)
【集群数据量】
【集群节点数】
【问题复现路径】做过哪些操作出现的问题
【遇到的问题:问题现象及影响】
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【复制黏贴 ERROR 报错的日志】
【其他附件:截图/日志/监控】

TiDBer_w08YopmM
#TiDBer_w08YopmM

sync_diff_inspector v2.0如何排除部分表

只有选中部份表的,可以通过选中表排除其他的表。

1 个赞

感谢了。

sync_diff_inspector的配置文件中,通过exclude字段指定要排除的数据库和表名即可。

sync-diff-inspector 官方文档 里说

sync-diff-inspector 的配置总共分为五个部分 …

  • Task config:配置校验哪些表, …

而且给了配置文件的简单说明

######################### Task config #########################
# 配置需要对比的*目标数据库*中的表
[task]
    # 需要比对的下游数据库的表,每个表需要包含数据库名和表名,两者由 `.` 隔开
    # 使用 ? 来匹配任意一个字符;使用 * 来匹配任意;
    # 详细匹配规则参考 golang regexp pkg
    # https://github.com/google/re2/wiki/Syntax
    target-check-tables = ["schema*.table*", "!c.*", "test2.t2"]

文档里的例子里有 “!c.*” 的写法,也许可以这样排除,你可以试试(我没测过哈😳)

比如排除 db1 里 pre_ 开头的表:!db1.pre_*

1 个赞

在这里面没看到有类似说明 :thinking:

是的,因为这个文档是解释 RE2 语法的,[^xyz] 这种否定是正则引擎里的

在正则表达式前面加个 ! 来反转匹配结果 是应用层(sync_diff_inspector) 的逻辑

:handshake:哦,我以为文档里有,明白了,谢谢。

此话题已在最后回复的 7 天后被自动关闭。不再允许新回复。