1> 正常切換
1)從服務器檢查SHOW PROCESSLIST語句的輸出,直到你看到Has read all relaylogwaiting for the slave I/O thread to update it
2)確保從服務器已經處理了日志中的所有語句。 mysql> STOP SLAVE IO_THREAD
當從服務器都執行完這些,它們可以被重新配置為一個新的設置。
3)在被提升為主服務器的從服務器上,發出 STOP SLAVE和RESET MASTER和RESET SLAVE操作。
4)然後重啟mysql服務。
5)在備用服務器(新的主服務器)創建用戶grant replication slave on *.* torepdcs@'IP of A' identified by 'replpwd'
grant allprivileges on *.* to 'repdcs'@'IP' identified by replpwd;
6) 在主服務器上RESET MASTER。然後CHANGE MASTER TOMASTER_HOST='原從服務器IP',MASTER_USER='用戶名',MASTER_PASSWORD='密碼' ,master_log_file='master-bin.000015' ;
7)查看狀態 show slave status \G;
Show master status \G;
如果還不行再次重啟主庫,並在備庫上執行CHANGE MASTER TOMASTER_HOST='192.168.0.110',MASTER_USER='repdcs',MASTER_PASSWORD='111111',master_log_file='mysqlbin.000002';
8)修改應用的連接地址到新的主庫
切換完成。
2> 主機直接宕機
1> 在備機上執行STOP SLAVE 和RESET MASTER
2> 查看show slave status \G;
3> 然後修改應用的連接地址。
一般大部分切換為直接宕機主機已經沒法提供服務