作為流行的開源數(shù)據(jù)庫管理系統(tǒng),MySQL的使用者眾多,為了維護(hù)數(shù)據(jù)安全性,數(shù)據(jù)備份是必不可少的。本文就為大家介紹幾種適用于企業(yè)的數(shù)據(jù)備份方法。
使用MySQLDump進(jìn)行MySQL備份
mysqldump是MySQL內(nèi)置的工具,允許用戶將數(shù)據(jù)庫指定不同的選項備份到文件、服務(wù)器,甚至是壓縮gzip文件中。mysqldump實用程序靈活,快速,可執(zhí)行高級備份,并接受各種命令行參數(shù),用戶可通過這些參數(shù)來更改備份數(shù)據(jù)庫的方式。
Windows操作系統(tǒng)中的c:mysqlbin和Unix / Linux系統(tǒng)的/usr/local/mysql/bin中可找到mysqldump實用程序,將不同的參數(shù)傳遞給mysqldump實用程序,就可以以下形式使用。
mysqldump ---user [user name] ---password= [password]
[database name] > [dump file]
手動備份,只需要MySQL數(shù)據(jù)庫的密碼,使用p選項作為密碼,將命令發(fā)送到mysqldump。例如,要備份所有數(shù)據(jù)庫,請使用all databases:
Mysqldump –u USER –p –all-databases> /mnt/backups/all
使用MySQLpump進(jìn)行MySQL備份
MySQLpump類似于mysqldump,生成支持并行化的邏輯備份。MySQLpump以并行方式為多個數(shù)據(jù)庫執(zhí)行所有與轉(zhuǎn)儲相關(guān)的操作,這大大減少了執(zhí)行邏輯備份所花費(fèi)的時間。
但是,MySQLpump不備份performance_schema,sys schema和ndbinfo,因此您必須使用 – databases來命名它們,它也不會轉(zhuǎn)儲用戶帳戶定義。
Shell> mysqlpump –exclude-databases=% --users
使用AutoMySQLBackup進(jìn)行MySQL備份
AutoMySQLBackup可以備份服務(wù)器上的數(shù)據(jù)庫,無論是單個、多個還是所有數(shù)據(jù)庫。每個數(shù)據(jù)庫都保存在一個單獨的文件中,可以壓縮該文件。如何執(zhí)行呢?只需下載一個文件bash腳本,保存并根據(jù)自己的喜好自定義,使其可執(zhí)行。
手動運(yùn)行腳本:./automysqlbackup.sh.2.5
由于此腳本不支持將備份文件夾保存到遠(yuǎn)程位置,因此可能需要安裝遠(yuǎn)程空間或使用其他技術(shù)遠(yuǎn)程上傳文件。
使用mydumper進(jìn)行MySQL備份
Mydumper是一個實用的軟件程序,可以保證快速可靠的多線程MySQL備份過程。眾所周知,Mydumper可以很好地處理大型數(shù)據(jù)庫,提供并行性。用戶需要創(chuàng)建如下所示的備份,然后將變量($)替換實變量,壓縮文件夾并將其放在首選位置。
Mydumper
--database=$DB_NAME
--host=$DB_HOST
--user=$DB_PASS
--rows=500000
--compress
--build-empty-files
--compress-protocol
快速和自動備份
MySQL自動備份與ottomatik
Ottomatik使用備用降落傘為您的MySQL數(shù)據(jù)庫提供了極好的備份解決方案。Ottomatik支持云或本地服務(wù)器,通過安裝腳本,它會自動安裝連接到Linux服務(wù)器的SSH密鑰,還可以為備份作業(yè)選擇多個服務(wù)器。
使用PHPMyAdmin進(jìn)行MySQL備份
PHPMyAdmin是一個流行的應(yīng)用程序,用于管理MySQL數(shù)據(jù)庫,可以免費(fèi)使用。很多服務(wù)提供商都使用PHPMyAdmin,有可能你自己都安裝了卻不自知。
備份數(shù)據(jù)庫所需要做的就是打開PHPMyAdmin,選擇文件或文件夾,然后單擊“導(dǎo)出”鏈接,另外,也有“另存為”和“壓縮”等在本地保存數(shù)據(jù)的選項。
使用文件系統(tǒng)快照進(jìn)行MySQL備份
可以使用Veritas,LVM或ZFS等文件系統(tǒng)進(jìn)行系統(tǒng)快照。要使用文件系統(tǒng)快照,從客戶端程序執(zhí)行具有讀鎖定的刷新表,然后從另一個shell執(zhí)行運(yùn)行mount vxfs snapshot。從第一個客戶端解鎖表,然后將文件從快照復(fù)制到目標(biāo)文件夾,稍后卸載快照。
通過復(fù)制表文件進(jìn)行備份
通過將表文件復(fù)制為*.MYD,*.MYI文件來備份MyISAM表,使用時需要停止服務(wù)器或鎖定并刷新相關(guān)表:
FLUSH TABLES tbl_list WITH READ LOCK;
在數(shù)據(jù)庫中復(fù)制文件時,讀鎖允許其他客戶機(jī)繼續(xù)查詢表,而刷新則確保在備份過程之前將所有活動索引頁寫入磁盤。
無論完全備份還是增量備份,MySQL數(shù)據(jù)庫備份都是必不可少的,而且隨著數(shù)據(jù)庫大小的增加,您可能還需要更改備份策略。
總結(jié)
以上所述是小編給大家介紹的8種手動和自動備份MySQL數(shù)據(jù)庫的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- Windows下實現(xiàn)MySQL自動備份的批處理(復(fù)制目錄或mysqldump備份)
- MySQL數(shù)據(jù)遷移使用MySQLdump命令
- mysql備份腳本 mysqldump使用方法詳解
- 詳解 linux mysqldump 導(dǎo)出數(shù)據(jù)庫、數(shù)據(jù)、表結(jié)構(gòu)
- 詳談mysqldump數(shù)據(jù)導(dǎo)出的問題
- 淺談mysqldump使用方法(MySQL數(shù)據(jù)庫的備份與恢復(fù))
- linux實現(xiàn)mysql數(shù)據(jù)庫每天自動備份定時備份
- 詳解Mysql自動備份與恢復(fù)的幾種方法(圖文教程)
- CentOS系統(tǒng)下如何設(shè)置mysql每天自動備份
- Centos7中MySQL數(shù)據(jù)庫使用mysqldump進(jìn)行每日自動備份的編寫