十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
Backup一直是數(shù)據(jù)庫最重要的環(huán)節(jié),MySQL也比例外。而mysql最好的備份工具就是Percona xtrabackup和Mysql Enterprise backup(官方收費版)。
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供沿灘網(wǎng)站建設、沿灘做網(wǎng)站、沿灘網(wǎng)站設計、沿灘網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、沿灘企業(yè)網(wǎng)站模板建站服務,十載沿灘做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。
Xtrabackup中主要包含兩個工具:
xtrabackup:是用于熱備份innodb, xtradb表中數(shù)據(jù)的工具,不能備份其他類型的表(Myisam表),也不能備份數(shù)據(jù)表結(jié)構(gòu)。
innobackupex:是將xtrabackup進行封裝的perl腳本,可以備份和恢復MyISAM表以及數(shù)據(jù)表結(jié)構(gòu)。
但是針對myisam的備份是需要加讀鎖的,多少會對線上業(yè)務影響。但是當前絕大部分Mysql用戶,都是用innodb,所以,myisam只是系統(tǒng)表使用,鎖的影響,也就可以忽略了。
一段官方文檔的說明:
http://www.percona.com/doc/percona-xtrabackup/2.1/manual.html
It is possible to use the xtrabackup binary alone, however, the recommend way is using it through the innobackupex wrapper script and let it execute xtrabackup for you. It might be helpful to first learn how to use innobackupex, and then learn how to use xtrabackup for having a better low-level understanding or control of the tool if needed.
這里,我們就用Percona Xtrabackup來備份Mysql。
1. 下載軟件,進入下載鏈接
https://www.percona.com/downloads/
2. 選擇xtrabackup


3. 選擇OS版本,下載
wget https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.11/binary/redhat/6/x86_64/percona-xtrabackup-24-2.4.11-1.el6.x86_64.rpm

4. 安裝中可能會遇到缺少下面包的問題:
--> Processing Dependency: libev.so.4()(64bit) for package: percona-xtrabackup-24-2.4.10-1.el6.x86_64 --> Finished Dependency Resolution Error: Package: percona-xtrabackup-24-2.4.10-1.el6.x86_64 (percona-release-x86_64) Requires: libev.so.4()(64bit)
到下面網(wǎng)址,下載對應系統(tǒng)的rpm包,并安裝
http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/libev.so.4
下載
wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/rudi_m:/devel-snap/CentOS_CentOS-6/x86_64/libev4-4.15-7.1.x86_64.rpm
安裝
rpm -ivh libev4-4.15-7.1.x86_64.rpm
5. 下載rpm包到本地,然后安裝,發(fā)現(xiàn)和現(xiàn)有的mysql沖突conflicts with file from package mysql-community-server
# yum -y localinstall percona-xtrabackup-24-2.4.11-1.el6.x86_64.rpm ...... Transaction Check Error: file /etc/my.cnf from install of Percona-Server-shared-51-5.1.73-rel14.12.625.rhel6.x86_64 conflicts with file from package mysql-community-server-5.6.39-2.el6.x86_64
6. 先安裝一個
# yum install MySQL-shared-compat*
7. 然后再次安裝,就解決沖突問題了
# yum localinstall percona-xtrabackup-24-2.4.10-1.el6.x86_64.rpm ...... Installed: percona-xtrabackup-24.x86_64 0:2.4.10-1.el6 Dependency Installed: perl-DBD-MySQL.x86_64 0:4.013-3.el6 rsync.x86_64 0:3.0.6-12.el6 Complete!
8. 備份與恢復測試
innobackupex --defaults-file=/etc/my.cnf --user=root --password='password' /backup/20180423/
手動刪除文件
/mysql/help_topic.frm rm: remove regular file `events_stages_current.frm'? y rm: remove regular file `events_stages_history.frm'? y rm: remove regular file `events_stages_history_long.frm'? y rm: remove regular file `events_stages_summary_by_account_by_event_name.frm'?
9. 整合備份文件
innobackupex --defaults-file=/etc/my.cnf --apply-log /backup/20180423/2018-04-18_00-58-36/
10. 備份還原
innobackupex --defaults-file=/etc/my.cnf --copy-back /backup/20180423/2018-04-18_00-58-36/
可以看到,xtrabackup已經(jīng)正常工作了。
mysql備份恢復測試,請參考:
https://blog.51cto.com/hsbxxl/2107383