2 台の 5.0 MySQL サーバーをマスター - マスター レプリケーションで実行しており、インメモリ データ表現を更新する前に、両方のデータベースの内容がまったく同じであることを確認したいと考えています。そうするために、現在私は次のロジックを使用しています
Slave_IO_Running
&Slave_SQL_Running
が両側で yes に設定されていることを確認します一方の問題
show master status;
では、現在のマスター ファイルと位置を取得します。反対側の問題では、 &
show slave status;
の値を取得しますMaster_Log_File
Exec_Master_Log_Pos
次に、2 つの側の値を比較し、2 番目の側の値が等しいかそれ以上の場合、複製が行われたことを返します。
マスターの後ろのフィールド秒数がhttp://dev.mysql.com/doc/refman/5.5/en/show-slave-status.htmlをチェックする別の方法である可能性があることは承知していますが、低速のネットワークではそうではない可能性があると書かれています正確であること。
私が質問している主な理由は、マスターの位置が 35000 で、スレーブでは 2000 でしかなく、ショー スレーブ ステータスの基になっているカタログが更新されていないかのように何も起こらないというケースを見てきたためです。はやくて。
percona のツールキットのアイデアに従って、チェックサムを含む別の検証方法を設計し始めています。
どんな考えや提案も大歓迎です!
乾杯、