sync-diff-inspector不同库同表名数据对比

【 TiDB 使用环境】生产环境 /测试/ Poc
【 TiDB 版本】
【复现路径】用DM同步后,怎么去校验数据一致性
【遇到的问题:问题现象及影响】现在想要校验二个不同库下面,同表名的数据一致性,target-check-tablesg不知道怎么配置
【资源配置】进入到 TiDB Dashboard -集群信息 (Cluster Info) -主机(Hosts) 截图此页面
【附件:截图/日志/监控】

想要校验test.d_mem_qw_userid和test_prd.d_mem_qw_userid的数据,target-check-tables要怎么配置才能对比
[data-sources]
[data-sources.oldtidb]
host = “XXXXXX”
port = 3306
user = “XXXXXX”
password = “XXXXX”
[data-sources.newtidb]
host = “XXXXX”
port = 4000
user = “XXXXX”
password = “XXXXX”
[routes]
[routes.rule1]
schema-pattern = “test”
table-pattern = “d_mem_qw_userid”
target-schema = “test_prd”
target-table = “d_mem_qw_userid”

[task]
output-dir = “/data/tools/tidb-toolkit-v5.3.2-linux-amd64/bin/output”
source-instances = [“oldtidb”]
target-instance = “newtidb”

需要比对的下游数据库的表,每个表需要包含数据库名和表名,两者由 . 隔开

target-check-tables = []

看下这个文档, 不同库名或表名的数据校验

https://docs.pingcap.com/zh/tidb/stable/route-diff

看了这文档,后面target-check-tables = []不知道怎么配了,不配又说没有tables要检查。

target-check-tables = ["test_prd.d_mem_qw_userid"]

target-check-tables 这个是写下游的数据库的表。你写test_prd.d_mem_qw_userid 就行

原来这么配过了,不行。

完整配置能帖出来吗

要在源端地址中加个路由规则

是的,库名不一致要routes

[routes.rule1]
schema-pattern = "schema_2"  # 匹配数据源的库名,支持通配符 "*" 和 "?"
target-schema = "schema"     # 目标库名 

我看着也是少个routes

自己写个脚本试试。