マスタースレーブレプリケーションのセットアップで、同じネットワーク上に2台のコンピューターがあります。
フェイルオーバーをテストするために、いくつかのデータをスレーブデータベースに直接挿入しました。そのため、スレーブデータベースにはマスターデータベースよりも多くの情報が含まれています。
ここで、マスターをスレーブと再び同期させて、実際のマスタースレーブ設定に戻したいと思います。どうすればいいですか?
それらを「マスター」および「スレーブ」と呼ぶ代わりに、次のように概説しましょう。
HostBに直接データを挿入すると、HostAはバイナリoplogに遅れをとっていました。まず、CHANGE MASTER TO
コマンドを使用してHostAをHostBのスレーブにすることで、これを克服する必要があります( http://dev.mysql.com/doc/refman/5.0/en/change-master -to.html )。これにより、HostAがHostBと同期するはずです。
HostAがHostBに追いついたら、HostAのバイナリログをリセットしてマスターにプロモートする必要があります。
RESET MASTER;
CHANGE MASTER TO
.。詳細については、 http://dev.mysql.com/doc/refman/5.0/en/replication-solutions-switch.html#figure_replication-redundancy-after を参照してください。
代替ソリューション:
データはうまくいくはずです。