在GTID環境中根據主庫備份恢復從庫

試驗環境:

主庫 192.168.3.202

備庫 192.168.3.203

開啓了GTID模式。

 

假如從庫和主庫差異較大,想要根據主庫的備份恢復從庫。

需要做如下步驟。

 

一 備份主庫

mysqldump -u root -p --single-transaction --all-databases --master-data=2 > AllDB.bak

#檢查備份文件中是否包含SET @@GLOBAL.GTID_PURGED=……內容:

cat 備份文件 | grep 'GTID_PURGE'   

scp AllDB.bak 192.168.3.203:/download/

 

二 在從庫上恢復數據

2.1 關閉主從複製

stop slave;

2.2 reset master清空@@GLOBAL.GTID_PURGED

否則會導入數據的時候會報錯:

ERROR 1840 (HY000) at line 24: @@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_EXECUTED is empty.

 

2.2.1 先記錄下相關信息(show master status)以備後患

 

2.2.2 reset master

reset master;

2.3 恢復數據

mysql -u root -p < AllDB.bak

2.4 啓動主從複製

START SLAVE;

2.5 檢查主從複製是否正常

show slave status

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章