學習啦>學習電腦>操作系統(tǒng)>Linux教程>

怎么備份遠程mysql數(shù)據(jù)庫的腳本文件

時間: 春健736 分享

  網(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.運維工程師簡歷

5.在mysql數(shù)據(jù)庫中 rank的用法

648812