您好,登錄后才能下訂單哦!
對于較大的數(shù)據(jù)庫,我們一般都是使用innobackup進(jìn)行備份,備份的及恢復(fù)的速度更快。
試驗環(huán)境:
CentOS6.8 x86_64
MySQL5.6.34 社區(qū)rpm版
xtrabackup版本:percona-xtrabackup-24-2.4.5-1.el6.x86_64.rpm
主庫:node0 192.168.2.10 (需要安裝xtrabackup和lz4)
從庫:node1 192.168.2.11(需要安裝xtrabackup和lz4)
5.6下GTID復(fù)制必須配的參數(shù)(主庫和從庫都要加上這3行參數(shù)):
gtid-mode=ON
enforce_gtid_consistency = ON
log_slave_updates=ON
step1、在從庫創(chuàng)建備份文件的存放目錄:
mkdir /tmp/db_restore
step2、在主庫執(zhí)行備份(最好開個screen操作,防止網(wǎng)絡(luò)中斷的問題),直接導(dǎo)出到從庫機器上:
## 注意這里我們還需要提前在2臺機器上安裝lz4壓縮工具,因為我們的腳本會調(diào)用lz4壓縮和解壓備份文件
innobackupex --user=root \
--password=123456 \
--parallel=4 \
--socket=/tmp/mysql.sock \
--no-timestamp \
--stream=xbstream . |\
lz4 -B4 |\
ssh node1 \
"cat - | lz4 -d -B7 | xbstream -x -C /tmp/db_restore"
step3、在從庫node1上看下 主庫的gtid位置
cd /tmp/db_restore
cat xtrabackup_binlog_info 內(nèi)容如下:
mysql.000008 1949 013bfb27-2edd-11e7-89c7-000c296a2c0d:1-72
為了便于理解,我們?nèi)ブ鲙觳榭聪聦?yīng)時間段的binlog,截圖如下:
補充:xtrabackup_binlog_info內(nèi)容解讀:
mysql.000008 表示主庫的binlog文件名,1949是尚未執(zhí)行的binlog position(就是說我們使用傳統(tǒng)change master模式的時候MASTER_LOG_FILE='master2-bin.001',MASTER_LOG_POS=1949)。
013bfb27-2edd-11e7-89c7-000c296a2c0d:1-72 指的是已經(jīng)執(zhí)行完的GTID編號(就是說我們change master的時候需要先執(zhí)行set global gtid_purged='013bfb27-2edd-11e7-89c7-000c296a2c0d:1-72'; 來purge掉這些GTID)。
step4、在從庫上將上一步獲取到的這些gtid purge掉,因為這些實際上已經(jīng)執(zhí)行過了。
set global gtid_purged='013bfb27-2edd-11e7-89c7-000c296a2c0d:1-72';
如果提示 ERROR 1840 (HY000): @@GLOBAL.GTID_PURGED can only be set when @@GLOBAL.GTID_EXECUTED is empty. 則需要執(zhí)行下reset master;
step5、配置并啟動復(fù)制:
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 status\G
然后可以在主庫的test庫下嘗試創(chuàng)建幾個表,驗證下復(fù)制是否正常。
待確認(rèn)的問題:
對于某些版本的innobackup,備份出的xtrabackup_binlog_info 里面只有mysql.000008 1949 ,而不帶GTID編號。那么我們執(zhí)行purge的時候就要根據(jù)binlog pos 1949這個位置到主庫的binlog去找到它上一個的gtid編號(例如上圖的就是013bfb27-2edd-11e7-89c7-000c296a2c0d:72)。或者使用傳統(tǒng)模式的復(fù)制,不用GTID復(fù)制即可。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。