mysql-tidb数据在线一致性对比

答复1:
新搭建一个从库d,然后从d同步到tidb c,校验数据之前临时停掉 d 的主从复制,用下面工具工具检验mysql和tidb之间的数据一致性
https://github.com/pingcap/tidb-tools/tree/master/sync_diff_inspector

答复2:
下面是晓光老师的答复:
如果业务表里有时间字段的话可以做一些额外的开发工作接入 MySQL binlog 来做数据一致性验证。拿到 binlog 后按照主键做 key 打到有足够多 partition 的 Kafka 或者 Pulsar 里,写消费者消费 Kafka 里的数据和 TiDB 中的数据进行比对。如果 MySQL 的数据时间戳更新并且同 TiDB 的其它字段数据对不上的话,就等待一段时间重新比对,如果持续等待时间超过一定阈值则报警并记录不一致数据然后继续校验下一行数据。在写入量低谷的时刻校验的 lag 足够短的时刻可以短暂停写然后切主操作。

2 个赞