レプリケーションを構成するにしても、一度旧サーバーをバックアップして、そのデーターをもとに新サーバーを作って、レプリケーションをスタートしないといけないですよね。
手順は
- 新サーバーでバイナリロギングを開始。
- mysqldump で、--single-transaction --master-data=2 をつけてバックアップ
- 新サーバーでデーターをリストア。
- ダンプされたデーターの中の コメントされたCHANGE MASTER 行をもとにレプリケーションをスタート。レプリケーションをバックアップから expire_logs_days 以内に開始する。
- レプリケーションが追いついた時点で旧サーバーの更新を止め、アクセスを新サーバーへ振替。
これで、切り替え時の一瞬止めるだけで入れ替えができます。
ただしMyISAM のテーブルを頻繁に変更している場合、TABLEの作成、削除を頻繁にしている場合は、
この方法ではできません。
ただし、mysqldump はバックアップもリストアも非常に遅いので、30GB もあるならば、LVM での
スナップショットでのバックアップや、有料のMySQL Enterprise Backup を使うべきです。
というか、30GBもデーターがあり、24時間稼働しているサーバーをここに質問をするような人が
管理していてはいけません。大変なことになる前に、エキスパートを雇われることをお勧めします。
または、MySQL のちゃんとしたサポートを提供する会社と契約するべきです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/05/31 14:31