xtrabackup shell腳本:
https://gitee.com/ygqygq2/mytools/tree/master/xtrabackup
成都創(chuàng)新互聯(lián)公司為您提適合企業(yè)的網(wǎng)站設(shè)計(jì)?讓您的網(wǎng)站在搜索引擎具有高度排名,讓您的網(wǎng)站具備超強(qiáng)的網(wǎng)絡(luò)競(jìng)爭(zhēng)力!結(jié)合企業(yè)自身,進(jìn)行網(wǎng)站設(shè)計(jì)及把握,最后結(jié)合企業(yè)文化和具體宗旨等,才能創(chuàng)作出一份性化解決方案。從網(wǎng)站策劃到成都網(wǎng)站制作、成都網(wǎng)站建設(shè), 我們的網(wǎng)頁設(shè)計(jì)師為您提供的解決方案。
此腳本基于Percona XtraBackup 2.4
在MySQL的root用戶下,創(chuàng)建用戶并給予下列權(quán)限
GRANT SUPER, RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO 'xtrabackup'@'localhost' identified by '12345678';
沒有SUPER權(quán)限,會(huì)在增量備份時(shí)報(bào)如下錯(cuò)誤
Error: failed to execute query FLUSH NO_WRITE_TO_BINLOG CHANGED_PAGE_BITMAPS: Access denied; you need (at least one of) the SUPER privilege(s) for this operation
將備份使用的密碼寫入到以下文件中,因?yàn)槟_本為讀取此文件中的密碼。
mkdir -p /data/save/
echo '12345678' > /data/save/mysql_xtrabackup
腳本使用場(chǎng)景為一天中備份多次。
xtrabackup_backup_mysql.sh # 腳本控制入口
xtrabackup_backup_full.sh # 全量備份腳本
xtrabackup_backup_incremental.sh # 增量備份腳本
xtrabackup_backup_restore.sh # 備份恢復(fù)腳本
在xtrabackup --prepare
時(shí),如果不使用--apply-log-only
以防止數(shù)據(jù)庫回滾,那么你的增量備份將是無用的。因?yàn)槭聞?wù)回滾后,進(jìn)一步的增量備份是不能被應(yīng)用的。--apply-log-only
應(yīng)該在合并除最后一次增量備份的所有增量備份時(shí),這就是為什么恢復(fù)備份腳本中,最后一次增量備份xtrabackup --prepare
不使用它的原因。即使--apply-log-only
在最后一次增量備份時(shí)被使用,備份仍將是一致的,但在這種情況下,數(shù)據(jù)庫會(huì)有執(zhí)行回滾的階段。