《MYSQL教程mysql xtrabackup 備份恢復(fù)實現(xiàn)分享》要點:
本文介紹了MYSQL教程mysql xtrabackup 備份恢復(fù)實現(xiàn)分享,希望對您有用。如果有疑問,可以聯(lián)系我們。
簡介 Xtrabackup是由percona提供的mysql數(shù)據(jù)庫備份工具,據(jù)官方介紹,這也是世界上惟一一款開源的能夠?qū)nnodb和xtradb數(shù)據(jù)庫進行熱備的工具.特點:
(1)備份過程快速、可靠;
(2)備份過程不會打斷正在執(zhí)行的事務(wù);
(3)能夠基于壓縮等功能節(jié)約磁盤空間和流量;
(4)自動實現(xiàn)備份檢驗;
(5)還原速度快;
Xtrabackup中包含兩個工具:
* xtrabackup - 用于熱備份innodb, xtradb表的工具,不能備份其他表.
* innobackupex - 對xtrabackup封裝的perl腳本,提供了MyISAM表備份的能力.(能進行整庫和數(shù)據(jù)表備份).
使用innobakupex備份時,其會調(diào)用xtrabackup備份所有的InnoDB表,復(fù)制所有關(guān)于表結(jié)構(gòu)定義的相關(guān)文件(.frm)、以及MyISAM、MERGE、CSV和ARCHIVE表的相關(guān)文件,
同時還會備份觸發(fā)器和數(shù)據(jù)庫配置信息相關(guān)的文件.這些文件會被保存至一個以時間命令的目錄中.
在備份的同時,innobackupex還會在備份目錄中創(chuàng)建如下文件:
(1)xtrabackup_checkpoints ―― 備份類型(如完全或增量)、備份狀態(tài)(如是否已經(jīng)為prepared狀態(tài))和LSN(日志序列號)范圍信息;每個InnoDB頁(通常為16k大小)都會包含一個日志序列號,即LSN.LSN是整個數(shù)據(jù)庫系統(tǒng)的系統(tǒng)版本號,每個頁面相關(guān)的LSN能夠表明此頁面最近是如何發(fā)生改變的.
(2)xtrabackup_binlog_info ―― mysql服務(wù)器當(dāng)前正在使用的二進制日志文件及至備份這一刻為止二進制日志事件的位置.
(3)xtrabackup_binlog_pos_innodb ―― 二進制日志文件及用于InnoDB或XtraDB表的二進制日志文件的當(dāng)前position.
(4)xtrabackup_binary ―― 備份中用到的xtrabackup的可執(zhí)行文件;
(5)backup-my.cnf ―― 備份命令用到的配置選項信息;
在使用innobackupex進行備份時,還可以使用--no-timestamp選項來阻止命令自動創(chuàng)建一個以時間命名的目錄;innobackupex命令將會創(chuàng)建一個BACKUP-DIR目錄來存儲備份數(shù)據(jù).
二進制版本 http://www.percona.com/downloads/XtraBackup/
wget http://www.percona.com/downloads/XtraBackup/LATEST/binary/Linux/x86_64/percona-xtrabackup-2.0.3-470.tar.gz
tar zxvf percona-xtrabackup-2.0.3-470.tar.gz
cd percona-xtrabackup-2.0.3/bin
cp * /usr/bin/
本次使用的是mysql5.5.28安裝在此不敘述
建一個用于數(shù)據(jù)備份的目錄
mkdir -p /opt/mysql_bak/
修改數(shù)據(jù)庫配置文件:
vim /etc/my.cnf
datadir = /home/mysql/data/
mysqladmin -uroot password 123456
整庫備份: innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf /opt/mysql_bak/
單獨備份: innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=test /opt/mysql_bak
備份并打包壓縮:
innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=test --stream=tar /opt/mysql_bak/ | gzip > /opt/mysql_bak/testdb.tar.gz
帶時間戳 innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=test --stream=tar /opt/mysql_bak/ | gzip > /opt/mysql_bak/`date +%F`_testdb.tar.gz
歡迎參與《MYSQL教程mysql xtrabackup 備份恢復(fù)實現(xiàn)分享》討論,分享您的想法,維易PHP學(xué)院為您提供專業(yè)教程。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/13078.html