1> 正常切换
1)从server检查SHOW PROCESSLIST语句的输出,直到你看到Has read all relaylogwaiting for the slave I/O thread to update it
2)确保从server已经处理了日志中的全部语句。
mysql> STOP SLAVE IO_THREAD
当从server都运行完这些,它们能够被又一次配置为一个新的设置。
3)在被提升为主server的从server上,发出 STOP SLAVE和RESET MASTER和RESET SLAVE操作。
4)然后重新启动mysql服务。
5)在备用server(新的主server)创建用户grant replication slave on *.* [email protected]‘IP of A‘ identified by ‘replpwd‘
grant allprivileges on *.* to ‘repdcs‘@‘IP‘ identified by replpwd;
6) 在主server上RESET MASTER。然后CHANGE MASTER TOMASTER_HOST=‘原从serverIP‘,MASTER_USER=‘username‘,MASTER_PASSWORD=‘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> 然后改动应用的连接地址。
一般大部分切换为直接宕机主机已经没法提供服务