?
This document uses PHP Chinese website manual Release
show processlist
查看兩個線程的更新狀態(tài)mysql> show processlist\G *************************** 1. row *************************** Id: 6 User: rep Host: 192.168.0.200:45738 db: NULL Command: Binlog Dump Time: 102 State: Master has sent all binlog to slave; waiting for binlog to be updated Info: NULL *************************** 2. row *************************** Id: 7 User: root Host: localhost db: NULL Command: Query Time: 0 State: NULL Info: show processlist
master.info
文件的同步情況# cat /usr/local/mysql/data/3307/data/master.info # cat /usr/local/mysql/data/3308/data/master.info 18 mysql-bin.000001 423 192.168.0.200 rep reppasswd 3306 60 0 0 1800.000 0
確保更新完畢,看看幾個從庫中那個最快,經(jīng)過測試沒有延遲的情況POS點差距很小,甚至是一致的。(確保從庫和主庫的一致性更高,數(shù)據(jù)丟失更少,選擇將同步最快的提升為主庫)
確保所有relay log
全部更新完畢
在每個從庫執(zhí)行 stop slave io_thread;
show processlist;
直到看到Has read all relay log;
表示從庫的更新都執(zhí)行完畢。
登錄選定好的從庫例端口3307 執(zhí)行stop slave;
和 reset master;
進入到選定的從庫數(shù)據(jù)庫端口3307文件目錄刪除master.info
relay-log.info
,檢查授權(quán)表,read-only
參數(shù)
3307端口提升從庫為主庫vim /usr/local/mysql/data/3307/my.cnf
開啟log-bin = /usr/local/mysql/data/3307/mysql-bin
另外:如果存在log-slave-updates
read-only
等參數(shù)一定要注釋掉,然后重啟mysql服務(wù)器。