【Mysql】5.7不停機:傳統複製-gtid複製

系統:centos7
主庫:192.168.225.128:3307
從庫1:192.168.225.129:3307
主從複製傳統複製已配置完畢mysql

1、前提:

1.要求全部的mysql版本5.7.6或更高的版本。
2.目前拓撲結構中全部的mysql的gtid_mode的值爲off狀態。
3.以下的操做步驟都是有序的,不要跳躍着進行。

補充一下全局系統變量GTID_MODE變量值說明:sql

OFF       新事務是非GTID,  Slave只接受不帶GTID的事務,傳送來GTID的事務會報錯
OFF_PERMISSIVE 新事務是非GTID,  Slave即接受不帶GTID的事務也接受帶GTID的事務
ON_PERMISSIVE    新事務是GTID,  Slave即接受不帶GTID的事務也接受帶GTID的事務
ON                   新事務是GTID,  Slave只接受帶GTID的事務

須要注意的是,這幾個值的改變是有順序的,即centos

off<--->OFF_PERMISSIVE<--->ON_PERMISSIVE<--->ON

不能跳躍執行,會報錯。函數

2、傳統複製切換爲GTID複製

前提:測試步驟中S1默認都是打開log-bin選項的,
操做步驟測試

1. 在M、S實例上,將ENFORCE_GTID_CONSISTENCY設置爲warning,哪臺先執行不影響結果

M:mysql> set @@global.enforce_gtid_consistency=warn;
S:mysql> set @@global.enforce_gtid_consistency=warn;

注意:執行完這條語句後,若是出現GTID不兼容的語句用法,在錯誤日誌會記錄相關信息,那麼須要調整應該程序避免不兼容的寫法,直到徹底沒有產生不兼容的語句,能夠經過應該程序去排查全部的sql,也能夠設置後觀察錯誤日誌一段時間,這一步很是重要。centos7

2. 在M、S上,設置ENFORCE_GTID_CONSISTENCY爲ON,哪臺先執行不影響結果

M:mysql> set @@global.enforce_gtid_consistency=on;
S:mysql> set @@global.enforce_gtid_consistency=on;

3. 在M、S實例上,設置GTID_MODE爲off_permissiv;哪臺先執行不影響結果

M:mysql> SET @@GLOBAL.GTID_MODE = OFF_PERMISSIVE;
S:mysql> SET @@GLOBAL.GTID_MODE = OFF_PERMISSIVE;

4. 在M、S實例上,設置GTID_MODE爲on_permissiv;哪臺先執行不影響結果

M: Mysql> SET @@GLOBAL.GTID_MODE = on_permissive;
S: Mysql> SET @@GLOBAL.GTID_MODE = on_permissive;

5. 在M、S上檢查變量ONGOING_ANONYMOUS_TRANSACTION_COUNT,須要等到此變量爲0

Mysql> SHOW STATUS LIKE 'ONGOING_ANONYMOUS_TRANSACTION_COUNT';
Mysql> SHOW STATUS LIKE 'ONGOING_ANONYMOUS_TRANSACTION_COUNT';

6. 確保全部的匿名事務(非GTID事務)已經被徹底複製到全部的server上。

M:show master status;
S:show slave status\G
或者或者slave直接用函數:
SELECT MASTER_POS_WAIT('mysql-binlog.000005',154);

返回結果大於等於0就說明匿名事務已經所有複製完成spa

clipboard.png

7. 確認整個拓撲結構中已經沒有匿名事務的存在,

如以前產生的全部匿名事務已經所有被執行完畢,甚至二進制日誌中也不要有匿名事務,能夠經過flush logs,並讓mysql來自動清理舊的二進制日誌文件。日誌

8. 在每一個mysql實例上,設置GTID_MODE爲on

M: mysql> SET @@GLOBAL.GTID_MODE = ON;
S: mysql> SET @@GLOBAL.GTID_MODE = ON;

9. 在每一個mysql實例的配置文件my.cnf上,

增長code

gtid-mode=ON
enforce_gtid_consistency=on

10. 完成

clipboard.png

相關文章
相關標籤/搜索