查找 mysql 复制差异模式

查找 mysql 复制差异模式

我正在使用 pt-table-checksum 和 pt-table-sync 来检查我的副本中的差异。当我将 pt-table-sync 与 -print 选项一起使用时,我只能看到主值。

我如何才能显示冲突的从属值?我想看看我是否能找到这些差异发生的模式。

答案1

使用pt-表同步使用这些选项

  • --print
  • --sync-to-master

将报告 SQL 更改至在从服务器上执行使奴隶与主人相匹配。

Master 只是为了比较的目的而连接的。

Percona 文档中关于 --print 选项的说明

打印将解决差异的查询。

如果您不信任 pt-table-sync,或者只是想看看它会做什么,这是一种安全的方法。这些查询是有效的 SQL,如果您想手动同步表,您可以自己运行它们。

强调:不要在主服务器上执行--printAND的输出--sync-to-master。只能在从服务器上执行。

如果你使用循环复制,请执行以下操作

echo "SET SQL_LOG_BIN = 0;" > ChangesToSlave.sql
pt-table-sync --print --sync-to-master ... >> ChangesToSlave.sql

然后你就可以ChangesToSlave.sql在 Slave 上运行了。

相关内容