MySQLのレプリケーションでマスターを差し替える場合
MySQLのレプリケーションでマスターを差し替える場合
MySQLのレプリケーションでマスターを変えるには以下の感じでいいんでしょうかね?
master_old: FLUSH TABLES WITH READ LOCK; -- 書き込み停止 SHOW MASTER STATUS; -- SELECT master_pos_wait() で使う master_new: SELECT MASTER_POS_WAIT('master_old-log_name', master_old-log_pos); -- 追いつくまで待つ SHOW MASTER STATUS; -- CHANGE MASTER TO で使う slave*: SELECT MASTER_POS_WAIT('master_old-log_name', master_old-log_pos); -- 追いつくまで待つ STOP SLAVE; CHANGE MASTER TO MASTER_USER = 'user_name', MASTER_PASSWORD = 'password', MASTER_HOST = 'master_new', MASTER_LOG_FILE = 'master_new-log_name', MASTER_LOG_POS = master_new-log_pos; START SLAVE; master_old: UNLOCK TABLES; -- 書き込み再開