詳解Mysql之mysqlbackup備份與恢復(fù)實(shí)踐
一、mysqlbackup簡(jiǎn)介
mysqlbackup是ORACLE公司也提供了針對(duì)企業(yè)的備份軟件MySQL Enterprise Backup簡(jiǎn)稱,是MySQL服務(wù)器的備份實(shí)用程序。它是一個(gè)多平臺(tái),高性能的工具,具有豐富的功能,例如 “熱”(在線)備份,增量和差異備份,選擇性備份和還原,支持直接云存儲(chǔ)備份,備份加密和壓縮以及許多其他有價(jià)值的功能特征。經(jīng)過優(yōu)化以用于InnoDB表,MySQL Enterprise Backup能夠備份和還原MySQL支持的任何存儲(chǔ)引擎創(chuàng)建的各種表。它的讀取和寫入過程(在獨(dú)立的,多個(gè)線程中執(zhí)行)的并行性及其塊級(jí)并行性(不同的線程可以在單個(gè)文件中讀取,處理或?qū)懭氩煌膲K),從而可以快速完成備份和還原過程,并且與logical backup使用mysqldump之類的工具 相比,通??梢燥@著提高性能 。MySQL Enterprise Backup是用于維護(hù)和保護(hù)MySQL數(shù)據(jù)以及在發(fā)生事故或?yàn)?zāi)難時(shí)快速可靠地進(jìn)行恢復(fù)的寶貴工具。它是MySQL企業(yè)版的一部分,可根據(jù)商業(yè)許可向訂戶提供。
二、全量備份與恢復(fù)實(shí)踐
1、創(chuàng)建數(shù)據(jù)庫(kù)test1
mysql> create database test1;
2、備份整個(gè)數(shù)據(jù)庫(kù)
#./mysqlbackup --host=127.0.0.1 --user=root --password=Yhxx@2020 --port=3306 --with-timestamp --backup-dir=/home/test/mysql/backup backup
3、查看備份數(shù)據(jù)
#ll /home/test/mysql/backup/
4、創(chuàng)建數(shù)據(jù)庫(kù)test2
mysql> create database test2; Query OK, 1 row affected (0.04 sec) mysql> show databases; ±-------------------+ | Database | ±-------------------+ | information_schema | | mysql | | performance_schema | | sys | | test1 | | test2 | ±-------------------+ 6 rows in set (0.00 sec)
5、執(zhí)行恢復(fù)文件準(zhǔn)備
#./mysqlbackup --defaults-file=/home/test/mysql/my.cnf --backup-dir=/home/test/mysql/backup/2020-12-12_15-15-23/ apply-log
6、停止數(shù)據(jù)庫(kù)并刪除data目錄下所有數(shù)據(jù)
#cd /home/test/mysql #rm -rf data/*
7、恢復(fù)備份文件
#./mysqlbackup --defaults-file=/home/test/mysql/my.cnf --backup-dir=/home/test/mysql/backup/2020-12-12_15-15-23/ copy-back
8、登錄數(shù)據(jù)庫(kù)查看驗(yàn)證
mysql > show databases;
已恢復(fù)到只有數(shù)據(jù)庫(kù)test1狀態(tài)。
三、使用backup-to-image備份與恢復(fù)實(shí)踐
1、在test1庫(kù)下創(chuàng)建數(shù)據(jù)庫(kù)表runoob_tbl
mysql> CREATE TABLE IF NOT EXISTS runoob_tbl( runoob_id INT UNSIGNED AUTO_INCREMENT, runoob_title VARCHAR(100) NOT NULL, runoob_author VARCHAR(40) NOT NULL, submission_date DATE, PRIMARY KEY ( runoob_id ))ENGINE=InnoDB DEFAULT CHARSET=utf8; Query OK, 0 rows affected (0.02 sec) mysql> show tables; ±----------------+ | Tables_in_test1 | ±----------------+ | runoob_tbl | ±----------------+ 1 row in set (0.00 sec)
2、使用backup-to-image將數(shù)據(jù)庫(kù)備份到單個(gè)二進(jìn)制文件
#./mysqlbackup --host=127.0.0.1 --user=root --password=Yhxx@2020 --port=3306 --backup-image=backupfull.mbi --with-timestamp --backup-dir=/home/test/mysql/backup backup-to-image
3、刪除表runoob_tbl
mysql> drop table runoob_tbl; Query OK, 0 rows affected (0.01 sec) mysql> show tables; Empty set (0.00 sec)
4、查看備份文件
5、查看備份文件中的內(nèi)容
#./mysqlbackup --backup-image=/home/test/mysql/backup/2020-12-12_16-08-18/backupfull.mbi list-image
6、校驗(yàn)備份文件
#./mysqlbackup --backup-image=/home/test/mysql/backup/2020-12-12_16-08-18/backupfull.mbi validate
7、停止數(shù)據(jù)庫(kù)并刪除數(shù)據(jù)庫(kù)data目錄下的文件
#rm -rf data/*
8、執(zhí)行恢復(fù)操作
#./mysqlbackup --defaults-file=/home/test/mysql/my.cnf --backup-image=/home/test/mysql/backup/2020-12-12_16-08-18/backupfull.mbi --backup-dir=/home/test/mysql/backup/2020-12-12_16-08-18 copy-back-and-apply-log
9、查看恢復(fù)后的數(shù)據(jù)庫(kù)
表runoob_tbl已經(jīng)恢復(fù)。
四、mysqlbackup工具下載及安裝
1、mysqlbackup工具下載
使用metalink賬號(hào)登錄mysql官網(wǎng),搜索并下載,建議下載.tgz格式安裝包。
如果沒有metalink賬戶也可以百度搜索,有網(wǎng)友提供了此工具的下載。
2、mysqlbackup工具安裝
解壓安裝包 #tar xvzf package.tgz #cd ./meb-4.1.0-el7-x86-64bit/bin 進(jìn)入mysqlbackup目錄 #cd meb-4.1.0-el7-x86-64bit/bin [test@testenv bin]$ ll total 10092 -rwxr-xr-x. 1 test test 10331202 Feb 28 2017 mysqlbackup [test@testenv bin]$ which mysql ~/mysql/mysql5.7/bin/mysql 將mysqlbackup工具拷貝到mysql安裝bin目錄 [test@testenv bin]$ cp mysqlbackup ~/mysql/mysql5.7/bin/mysql
3、常用參數(shù)解釋
- –user:用戶名。
- –password:密碼。
- –port:端口,默認(rèn)值為3306。
- –backup-dir:可以看成是mysqlback的工作目錄。
- –backup-image:備份文件名。
- backup-to-image:把所有的備份信息輸出到一個(gè)備份文件當(dāng)中。
- backup 執(zhí)行備份操作
- apply-log 執(zhí)行準(zhǔn)備恢復(fù)文件操作
- copy-back 執(zhí)行恢復(fù)操作
- validate 檢查備份文件完整性
- extract 解壓mbi文件到當(dāng)前目錄
- image-to-backup-dir 指定目錄進(jìn)行解壓
到此這篇關(guān)于詳解Mysql之mysqlbackup備份與恢復(fù)實(shí)踐的文章就介紹到這了,更多相關(guān)mysqlbackup備份與恢復(fù)內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。