PT-Table-CheckSumとPT-Table-Syncを使用して、レプリカの違いを確認します。 -printオプションを指定してpt-table-syncを使用すると、マスター値のみが表示されます。
矛盾するスレーブ値も表示するにはどうすればよいですか。私はそれらの差分が発生するパターンを見つけることができるかどうか見たいです。
使用 - pt-table-sync これらのオプションを使用して
--print
--sync-to-master
スレーブをマスターに一致させるには、SQLの変更をExecuteに報告します。
マスターは比較のために単に接続されています。
--printオプションのPerconaの文書化
違いを解決する印刷クエリ。
PT-TABLE-SYNCを信用しない場合、またはそれが何をするのか見たい場合は、これは安全な方法です。これらのクエリは有効なSQLであり、テーブルを手動で同期させる場合は、自分で実行できます。
強調のために:マスターに--print
および--sync-to-master
の出力を実行しないでください。スレーブのみで実行してください。
循環レプリケーションを使用している場合は、これを行います
echo "SET SQL_LOG_BIN = 0;" > ChangesToSlave.sql
pt-table-sync --print --sync-to-master ... >> ChangesToSlave.sql
その後、スレーブでChangesToSlave.sql
を実行できます。