【基礎】 mysqldump 創建基於GTID的從庫

  • 2019 年 10 月 5 日
  • 筆記

對於小型的數據庫,我們可以直接使用mysqldump全庫導出導入來創建從庫。

試驗環境:

  CentOS6.8 x86_64

  MySQL5.6.34 社區rpm版

  主庫:node0 192.168.2.10 

  從庫:node1 192.168.2.11

5.6下GTID複製必須配的參數(主庫和從庫都要加上這3行參數):

  gtid-mode=ON

  enforce_gtid_consistency = ON

  log_slave_updates=ON

step1、在主庫導出並scp傳輸到node1:

mysqldump -uroot -pwww.Mwbyd91@ -A -q –single-transaction –master-data=2 > /root/all.sql

scp /root/all.sql node1:/root/

step2、在node1上恢復進去:

node1新安裝的沒有密碼,執行mysql即可登錄

source /root/all.sql;

step3、在node1上啟動複製:

CHANGE MASTER TO MASTER_HOST='192.168.2.10', 

 MASTER_USER='rpl', 

 MASTER_PASSWORD='rpl', 

 MASTER_PORT=3306, 

 MASTER_AUTO_POSITION=1;

start slave;

show slave statusG

# 說明:

mysqldump這種方式的導入不需要像innobackup那樣執行set global gtid_purged='xxxxx'; 這類的操作。因為在mysqldump導出的sql裏面有自動設置的地方,如下圖是導出的all.sql的部分截圖: