mysqlレプリケーション 復旧

mysqlにて、マスター1台、スレーブ2台で運用中に、
スレーブ1台が壊れた場合の復旧方法 覚書

壊れたスレーブを停止する。

OKな別のスレーブのサービス停止
(レプリケーションを停止)
壊れたスレーブにデータを同期させる。
(フラッシュコピー::このときログファイルのサイズが同じ
でないと、コピーできないことに注意)

復旧させるサーバにて
master.info
2行目 MASTER_LOG_POS
3行目 MASTER_LOG_FILEを確認メモ。

mysqlサービス起動
mysqlコンソールにrootでログイン。

mysql>reset slave;
mysql>CHANGE MASTER TO MASTER_HOST = ‘マスターIPアドレス’,
MASTER_USER = ‘レプリケーションユーザー’,
MASTER_PASSWORD = ‘password’,
MASTER_LOG_FILE = ‘filename’,
MASTER_LOG_POS = 0000001;
mysql>start slave;

※もしエラーが発生する場合は、再度reset slaveを実行

各サーバのスレーブ状態を確認すること。

この記事を書いた人

ものくろ(Webコーチ)

株式会社あみだす 代表取締役 / 博士課程中退(農学) / ブロガー / Web&Blogコーチ / 親指シフト orzレイアウト開発者 / 講師 / フリーランス / 旅人 / 民事裁判経験者 / 毎月どこかに出張

ブログは月間65万PVを記録(2016年1月)。 これまでに250回を超えるワークショップ開催・のべ1,200名のブログサポートに携わる。

WordPressが得意 / 好きなもの(無刻印キーボード・十割蕎麦・湯葉)/ あまり好みでないもの(ブロッコリー・値切り)

開催している講座に参加する