1

MySQL スレーブを 1 つの HD セットから別のセットに移動しています。このマシンの構成では、古いハード ドライブと新しいハード ドライブの両方を同時に搭載することはできません。そこで、データディレクトリを別のマシンに再同期しました。

新しいハード ドライブがオンラインになったら、データ ディレクトリを再同期しました。これはうまくいきました。

ただし、レプリケーションを開始できません。これは私が得るエラーです。

120314  4:23:07 [Warning] Neither --relay-log nor --relay-log-index were used; so replication may break when this MySQL server acts as a slave and has his hostname changed!! Please use '--relay-log=mysqld-relay-bin' to avoid this problem.
120314  4:23:07 [ERROR] Failed to open the relay log '/var/lib/mysqllogs/mysqld-relay-bin.000273' (relay_log_pos 677043943)
120314  4:23:07 [ERROR] Could not find target log during relay log initialization
120314  4:23:07 [ERROR] Failed to initialize the master info structure

このコメントを見つけました: https://serverfault.com/questions/61471/moving-a-mysql-slave-to-a-new-host-failed-to-open-the-relay-log

リレー ログに不満があるだけの場合、ほとんどの場合、マスターがまだバイナリ ログを保持していれば、リレー ログは破棄できます。スレーブで CHANGE MASTER TO を実行するだけで、既存のリレー ログがフラッシュされ、新たに開始されます。新しいフレッシュ コピーを作成する必要はありません。

これは、これらのログ ファイルが必要ないことを示唆しているようです。

ホスト名は変更されません。

私の質問:

これらのログ ファイルは必要ですか?

そうでない場合、レプリケーションを開始するにはどうすればよいですか? 中断した場所を覚えていますか?

これらのログ ファイルが必要な場合、他に忘れているものはありますか?

4

1 に答える 1

4

動作させるためにリレー ビンの loge ファイルは必要ないと思います。中断した場所を覚えているかもしれません。コマンドを試しましたmysql>RESET SLAVE;か? SHOW SLAVE STATUS によって SLAVE から位置を取得する必要があります。まだ覚えているかどうかを確認するには、最大ファイル サイズを設定している間だけログ ファイルが保持されるため、マスター サーバーにログ ファイルがまだ存在するかどうかを確認します。ただし、RESET SLAVE を試してください。あなたが持っていない場合、それは魔法を行います。おそらく、テーブルをロックしてSHOW MASTER STATUS

于 2012-03-29T21:18:01.970 に答える