怎么備份遠程mysql數(shù)據(jù)庫的腳本文件
網(wǎng)站數(shù)據(jù)對我們對站長來說都是最寶貴的,備份好網(wǎng)站數(shù)據(jù)。這樣可使我們數(shù)據(jù)庫崩潰造成的損失大大降低,那么怎么備份遠程mysql數(shù)據(jù)庫的腳本文件?下面跟著學習啦小編一起來了解一下吧。
怎么備份遠程mysql數(shù)據(jù)庫的腳本文件
在MySQL中進行數(shù)據(jù)備份的方法有兩種:
1. mysqlhotcopy
這個命令會在拷貝文件之前會把表鎖住,并把數(shù)據(jù)同步到數(shù)據(jù)文件中,以避免拷貝到不完整的數(shù)據(jù)文件,是最安全快捷的備份方法。
命令的使用方法是:
mysqlhotcopy -u root -p<rootpass> db1 db2 … dbn <output_dir>
如果需要備份全部數(shù)據(jù)庫,可以加上–regexp=”.*”參數(shù)。
Mysqlhotcopy命令可自動完成數(shù)據(jù)鎖定工作,備份時不用關(guān)閉服務(wù)器。它還可以刷新日志,使備份文件和日志文件的檢查點能保持同步。
2. mysqldump
這個命令是用來把數(shù)據(jù)庫倒成sql文件的,是非常古老的命令了。
命令的使用方法是:
mysqldump -u root -p<rootpass> –hex-blob db1 > db1.sql
加上–hex-blob參數(shù)以后,blob數(shù)據(jù)會被類似BASE64的方法轉(zhuǎn)換為文本來存儲在sql文件中,就不會導(dǎo)致sql文件格式問題了。經(jīng)過測試,通過這種方法備份的blob數(shù)據(jù)再重新恢復(fù)回去能夠完全正確。
如果要備份所有的數(shù)據(jù)庫,可以加上–all-databases參數(shù)。
用mysqldump命令還可直接把數(shù)據(jù)庫轉(zhuǎn)移到另外一臺服務(wù)器上,不用生成備份文件。重復(fù)執(zhí)行可定期更新遠程數(shù)據(jù)庫。
% mysqladmin -h remote_host create testdb
% mysqldump –opt testdb | mysql -h remote_host testdb
另外還可通過ssh遠程調(diào)用服務(wù)器上的程序,如:
% ssh remote_host mysqladmin create testdb
% mysqldump –opt testdb | ssh remote_host mysql testdb
2種數(shù)據(jù)庫備份方式的優(yōu)缺點:
使用mysqlhotcopy等程序備份速度快,因為它直接對系統(tǒng)文件進行操作,但是需人為協(xié)調(diào)數(shù)據(jù)庫數(shù)據(jù)的備份前后一致性。
mysqldump程序備份數(shù)據(jù)庫較慢,但它生成的文本文件便于移植。
對于沒有使用InnoDB的數(shù)據(jù)庫,用mysqlhotcopy是最好的方法;否則必須采用mysqldump。不論如何,直接拷貝文件的備份方法應(yīng)該被廢棄了。
看過“ 怎么備份遠程mysql數(shù)據(jù)庫的腳本文件 ”的人還看了:
1.Linux系統(tǒng)虛擬主機安全怎么設(shè)置
2.sqlserver多數(shù)據(jù)庫自動備份系統(tǒng)
3.oracle數(shù)據(jù)庫自動備份系統(tǒng)
4.運維工程師簡歷