MySQL レプリケーション備忘録

このサイトの検証環境でMySQLのレプリケーションの検証をしており、この本番環境にもレプリケーションを構築しようと考えておりましたが、昨年後半は何かと忙しく半年以上も放置しておりました。 手順もすっかり忘れてしまったので過去の備忘録を見ながら、以下の手順で検証環境のデータベースを更新しました。

①本番サイトのMySQLデータベースをコールドバックアップ

②検証環境に①のコールドバックアップをリストア

③検証環境(Master)とレプリケーションしているスレーブサーバでレプリケーション

 

③の時にレプリケーションがうまくいかずハマりました・・・スレーブサーバの設定を少し変更したのでそれが原因かと思いましたが、レプリケーション用のMySQLアカウントが無くなっていたのが原因でした。本番サイトのデータベースを検証サイトにリストアした際に消えてしまっていました。 以下、忘れていたレプリケーションの備忘録

■マスターサーバ SHOW MASTER STATUS; SHOW MASTER STATUS \G マスターバイナリーログのステータス情報 ※\Gにすると垂直方向に表示される 20130211_showmasterstatus

■スレーブサーバ SHOW SLAVE STATUS; SHOW SLAVE STATUS \G スレーブスレッドのステータス情報 20130211_showslavestatus

以下でレプリケーション状態が確認できます。

Master_Log_File:(現在読み込んでいるマスタのバイナリログ)

Read_Master_Log_Pos:(現在読み込んでいるマスタのバイナリログの位置)

Slave_IO_Running:YES(I/O スレッドのマスタ接続状態)

Slave_SQL_Running:YES(SQLスレッドの実行状態)