4

多くの人がマスターとスレーブの配置を使用すると、レプリケーションを使用して新しい一時的なマスターをセットアップし、再配置を停止してから役割を交換してから、スキーマを変更する際の時間を短縮できると聞きます。スタック オーバーフローで見つかった例 (以下) を見つけました。

  1. スレーブの設定
  2. レプリケーションを停止します。
  3. スレーブで ALTER を作成する
  4. スレーブがマスターに追いつくようにする
  5. マスターとスレーブを交換することで、スレーブは構造が変更され、ダウンタイムが最小化された本番サーバーになります

これはすべて非常にうまくいっていますが、ステップ4がわかりません。

どなたか手順をわかりやすく説明していただけないでしょうか。

4

2 に答える 2

1

スレーブがマスターに追いつくようにする

スレーブがマスターに追いつくようにします。つまり、スレーブはマスターから 0 秒遅れています。

これは、(テーブルを変更するために) ある時点でレプリケーションが停止した場合
、最後のレプリケーション時刻が登録されることを意味します。

レプリケーションが再開
されると、マスターの現在の書き込みとスレーブの最後のレプリケーション時間が比較されます。

ただし、手順に欠陥があるようです。
スレーブを変更することはできず、更新されたスレーブ
の期待スキーマはmasterと同じです。

イベント列タイプが変更され、列が削除され、
レプリケーションの失敗につながる可能性があります。

于 2010-12-01T11:30:58.073 に答える
0

seconds_behind_master は 0 にする必要があります。

于 2010-12-01T11:07:42.470 に答える