MySQLレプリケーションの動作確認と不具合時の復旧方法

【動作不具合時の確認方法】

スレーブサーバで、

mysql> show slave status\G;
・
・
Read_Master_Log_Pos: 424597747
・
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

〜RunningがNoになっていたらレプリケーションが止まっています。

マスターサーバで、

mysql> show master status\G;
File: mysql-bin.000108
Position: 424597871

Positionの値とスレーブサーバのRead_Master_Log_Posの値が異なっていると×です。


【復旧方法】
スレーブサーバで、

mysql> stop slave;
mysql> show slave status \G;
・
・
Slave_IO_Running: No
Slave_SQL_Running: No

となっていることを確認し、

mysql> reset slave;

を実行。

それからスレーブサーバで、

mysql> CHANGE MASTER TO
    -> MASTER_HOST='ホスト名',
    -> MASTER_USER='マスターユーザ名',
    -> MASTER_PASSWORD='マスターパスワード',
    -> MASTER_LOG_FILE='mysql-bin.000108', //マスターサーバの情報
    -> MASTER_LOG_POS=424597871; //マスターサーバの情報
mysql> slave start;
mysql> show slave status \G;
・
・
Read_Master_Log_Pos:424597871
・
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

となっていること確認