参考:
pt-table-checksum — Percona Toolkit Documentation
pt-table-sync — Percona Toolkit Documentation
#对比host1 test库与备库差别
pt-table-checksum h=host1,p=root,P=3306,u=root -d test --recursion-method processlist --no-check-binlog-format --nocheck-replication-filters
DIFFS为1行,对应的TABLE不一致。
#打印备库要执行的sql
pt-table-sync h=host1,p=root,P=3306,u=root -d test h=host2,p=root,P=3306,u=root --print --nobin-log > fix.sql
#去掉注释
sed -i 's#/.*/##' fix.sql
#查看备库要执行的sql
cat fix.sql
#没有问题的话执行同步
pt-table-sync h=host1,p=root,P=3306,u=root -d test h=host2,p=root,P=3306,u=root --execute --nobin-log
#如果sql里有host1需要的数据,可以host1 执行 set session sql_log_bin=0插入对应的sql,然后set session sql_log_bin=1,再次对比判断是否同步。