MySQL 5.6.14生產(chǎn)環(huán)境凌晨3點(diǎn)的備份,不完全恢復(fù)到中午12點(diǎn).(xtrabackup_binlog_pos_innodb的內(nèi)容是mysql-bin.006946 3784607)
MySQL 5.6.14
生產(chǎn)環(huán)境凌晨3點(diǎn)的備份,不完全恢復(fù)到中午12點(diǎn).
(xtrabackup_binlog_pos_innodb的內(nèi)容是mysql-bin.006946 3784607)
第一種方式:mysqlbinlog
1.找到需要恢復(fù)的binlog
進(jìn)入binlog目錄,執(zhí)行
ll | awk '{print $9}' > /tmp/binlog.index
然后修改/tmp/binlog.index文件,刪除不需要恢復(fù)的文件名.
2.解析binlog
time mysqlbinlog $(cat /tmp/binlog.index) --start-position=3784607 --stop-datetime='2015-07-13 12:00:00' > /tmp/binlog
real 2m32.399s
user 1m24.514s
sys 1m5.803s
3.設(shè)置MySQL服務(wù)器參數(shù)
max_allowed_packet=100M
innodb_flush_log_at_trx_commit=0
4.執(zhí)行
time mysql -uroot -p -S mysql.sock --force < /tmp/binlog
real 50m24.341s
user 5m1.426s
sys 3m32.348s
執(zhí)行3.4G的文件,用時(shí)50分鐘.
第二種方式:復(fù)制,使用SQL線程執(zhí)行
1.找到需要恢復(fù)的binlog
進(jìn)入binlog目錄,執(zhí)行
ll | awk '{print $9}' > /tmp/binlog.index
然后修改/tmp/binlog.index文件,刪除不需要恢復(fù)的文件名.
2.拷貝需要的binlog至一個新的目錄
mkdir /tmp/testlog
cp $(cat /tmp/binlog.index) /tmp/testlog/
3.修改服務(wù)器參數(shù)
max_allowed_packet=100M
innodb_flush_log_at_trx_commit=0
server_id=111
relay_log=/tmp/testlog/mysql-bin
relay_log_index=/tmp/testlog/mysql-bin.index
skip_slave_start = 1
其中
server_id一定要修改為一個不同的值,否則binlog被直接丟棄.
skip_slave_start防止自動啟動復(fù)制
4.啟動實(shí)例,生成復(fù)制的相關(guān)文件
change master to
master_host='localhost',
master_port=3306,
master_user='repl',
master_password='repl',
master_log_file='dummy.binlog',
master_log_pos=777;
master是一個隨便的值,主要是生成master.info,relay-log.info等相關(guān)文件
5.關(guān)閉實(shí)例,修改文件
修改relay-log.info
修改/tmp/testlog/mysql-bin.index 為
awk '{print "/tmp/testlog/"$1'} /tmp/binlog.index > /tmp/testlog/mysql-bin.index
6.啟動實(shí)例,啟動復(fù)制
start slave sql_thread UNTIL RELAY_LOG_FILE = 'mysql-bin.006982', RELAY_LOG_POS = 37300415;
恢復(fù)用時(shí)43分鐘.
mysqlbinlog方式更簡單,但是一旦出錯,容易前功盡棄
復(fù)制的方式,前期配置比較復(fù)雜,但是出現(xiàn)錯誤,更容易修正.
從效率上看,相差不大
如果有大量的binlog需要恢復(fù),建議使用復(fù)制的方式.
如果只有少量的binlog需要恢復(fù),還是使用mysqlbinlog更簡潔一些.
本文永久更新鏈接地址:
,聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com