2

pt-table-sync を使用してテーブルに同期しようとしています。問題は、RDSbilong_formatが に設定されてMIXEDおり、ツールが を必要とすることですSTATEMENT。そして、それを変更する特別な権限はありません。

これを回避してテーブルを同期するにはどうすればよいですか?

エラーは次のとおりです。

This tool requires binlog_format=STATEMENT, but the current binlog_format is set to MIXED and an error occurred while attempting to change it.  If running MySQL 5.1.29 or newer, setting binlog_format requires the SUPER privilege.  You will need to manually set binlog_format to 'STATEMENT' before running this tool.
4

1 に答える 1

2

提案

を実行するときは、必要な権限がすべて必要になる可能性があるため、このオプションをpt-table-sync使用しないでください。andを使用して、出力を SQL テキスト ファイルにリダイレクトして--executeみてください。SQL テキスト ファイルが生成された場合は、SQL テキスト ファイル内を調べます。--sync-to-master--print

SQL テキスト ファイルにREPLACEステートメントのみが含まれている場合は、マスターで SQL テキスト ファイルを実行するだけです。すべてをスレーブに複製します。

DELETEステートメントが 1 つでも含まれている場合は、RDS スレーブを削除して、新しい読み取り専用 RDS スレーブを起動することをお勧めします。

試してみる !!!

于 2013-03-26T14:49:46.860 に答える