MySQL備份-創(chuàng)新互聯(lián)

MySQL備份

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、重慶小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了德宏州免費(fèi)建站歡迎大家使用!

1、MySQL備份過程:
MyISAM
全備:
a. 鎖表 -- LOCK TABLE -- --lock-all-tables
b. 同步表 -- FLUSH TABLES
c. 刷新二進(jìn)制日志 -- FLUSH LOGS -- --flush-logs
d. 記錄二進(jìn)制日志位置 -- SHOW MASTER STATUS -- --master-data=2
e. 備份數(shù)據(jù) -- -- mysqldump --databases
f. 釋放鎖 -- UNLOCK TABLES
g. 刪除舊二進(jìn)制日志 -- PURGE BINARY LOGS TO
總結(jié)命令:
mysqldump --databases --lock-all-tables --master-data=2 --flush-logs DB_NAME > db_name-datetime.sql
增量備份:
a. 刷新二進(jìn)制日志 -- FLUSH LOGS
b. 復(fù)制舊的二進(jìn)制日志即可

InnoDB
全備:
a. 刷新二進(jìn)制日志
b. 記錄當(dāng)前二進(jìn)制日志位置
c. 刪除舊二進(jìn)制日志
***相關(guān)鎖表等操作數(shù)據(jù)庫自動完成,由參數(shù)--single-transaction即可完成
總結(jié)命令:
mysqldump --databases --master-data=2 --flush-logs --single-transaction DB_NAME > db_name-datetime.sql
增量備份:
a. 刷新日志 -- FLUSH LOGS
b. 復(fù)制舊的二進(jìn)制日志即可

備份腳本
[root@ibm01 ~]# cat sqlbackup.sh
#!/bin/bash

DB_Name="$1"
DB_Egine="$2"
Backup_Type="$3"
Backup_Time=date +%Y%M%d%H%M%S
Backup_File=$DB_Name-$Backup_Time.sql
Data_Dir="/data/mysql/logs/"

function FullBackup() {
if [ $DB_Egine == "MyISAM" ]
then
mysqldump --databases --lock-all-tables --flush-logs --master-data=2 $DB_Name > $Backup_File
elif [ $DB_Egine == "InnoDB" ]
then
mysqldump --databases --single-transaction --flush-logs --master-data=2 $DB_Name > $Backup_File
fi
Current_BinLog_File=egrep -o "MASTER_LOG_FILE=.*," $Backup_File |cut -d"=" -f2|tr -d ","
mysql -e "PURGE BINARY LOGS TO $Current_BinLog_File;"
}

function IncrBackup() {
BinLog_Files=mysql -N -e "SHOW BINARY LOGS;"|cut -f1 |tr "\n" " "
mysql -e "FLUSH LOGS;"
mkdir /root/binlogs/$Backup_Time
cd $Data_Dir
cp $BinLog_Files /root/binlogs/$Backup_Time
}

if [ $Backup_Type == "Full" ]
then
FullBackup
elif [ $Backup_Type == "Incr" ]
then
IncrBackup
fi
xtrabackup備份:
1、對于innodb可以實現(xiàn)增量備份,對于myISAM只能全備
2、innobackupex /backuppath(備份)
3、innobackupex --apply-log /backuppath/backuptime(應(yīng)用事務(wù)日志)
4、innobackupex --copy-back /backuppath/backuptime(恢復(fù))

xtrabackup增量備份:
備份:
1、innobackupex --incremental --incremental-basedir=/上一次備份路徑 /備份路徑

增量備份的恢復(fù)需要有3個步驟:
1、恢復(fù)完全備份
2、恢復(fù)增量備份到完全備份(開始恢復(fù)的增量備份要添加--redo-only參數(shù),到最后一次增量備份要去掉--redo-only)
3、對整體的完全備份進(jìn)行恢復(fù),回滾未提交的數(shù)據(jù)

恢復(fù)過程:
##準(zhǔn)備一個全備##
[root@centos6 pxb]# innobackupex --apply-log --redo-only /data/pxb/2017-04-24_02-46-11/

xtrabackup: starting shutdown with innodb_fast_shutdown = 1
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number 2628145
InnoDB: Number of pools: 1
01:33:52 completed OK!

##將增量1應(yīng)用到完全備份##
[root@centos6 pxb]# innobackupex --apply-log --redo-only /data/pxb/2017-04-24_02-46-11/ --incremental-dir=/data/pxb/inc/2017-04-28_01-09-40/

##將增量2應(yīng)用到完全備份,注意不加 --redo-only 參數(shù)了##
[root@centos6 pxb]# innobackupex --apply-log /data/pxb/2017-04-24_02-46-11/ --incremental-dir=/data/pxb/inc/2017-04-28_01-27-46/

##把所有合在一起的完全備份整體進(jìn)行一次apply操作,回滾未提交的數(shù)據(jù)##
[root@centos6 pxb]# innobackupex --apply-log /data/pxb/2017-04-24_02-46-11/
xtrabackup: Log applied to lsn 2628145
xtrabackup: The intended lsn is 2643563

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文標(biāo)題:MySQL備份-創(chuàng)新互聯(lián)
分享URL:http://bm7419.com/article16/diopgg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT網(wǎng)站設(shè)計、關(guān)鍵詞優(yōu)化、定制網(wǎng)站、企業(yè)網(wǎng)站制作、網(wǎng)站維護(hù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)