sql 2009-03-24 14:06:43 閱讀122 評(píng)論0 字號(hào):大中小
一、文件夾覆蓋備份法(網(wǎng)上教程)
目的:備份hostA主機(jī)中一個(gè)mysql數(shù)據(jù)庫TestA,并恢復(fù)到到hostB機(jī)中
試驗(yàn)環(huán)境:
操作系統(tǒng):WinXPsp2,Mysql4.1.8,MySQL-Front.
在hostA中安裝mysql數(shù)據(jù)庫并建立TestA數(shù)據(jù)庫
hostB機(jī)安裝mysql數(shù)據(jù)庫,沒有TestA數(shù)據(jù)庫
方法步驟:
啟動(dòng)MySQL-Front察看HostA和HostB中的數(shù)據(jù)庫列表,在HostB中沒有TestA數(shù)據(jù)庫
找到HostA中mysql的安裝目錄,并找到數(shù)據(jù)庫目錄data
在我的試驗(yàn)環(huán)境中,這個(gè)目錄是
C:\Program Files\MySQL\MySQL Server 4.1\data
找到對(duì)應(yīng)數(shù)據(jù)庫名稱的子目錄
C:\Program Files\MySQL\MySQL Server 4.1\data\TestA
找到HostA中的目錄MySQL Datafiles
在我的試驗(yàn)環(huán)境中,這個(gè)目錄是
C:\MySQL Datafiles
將這個(gè)目錄 覆蓋HostB的MySQL Datafiles目錄。
刷新HostB的MySQL-Front察看一下數(shù)據(jù)庫列表,我們看到TestA已經(jīng)出現(xiàn),并且作查詢修改等操作都正常,備份恢復(fù)恢復(fù)成功。
試驗(yàn)結(jié)論:Mysql的數(shù)據(jù)庫可以通過文件形式保存,備份,恢復(fù)只要將相應(yīng)文件目錄恢復(fù)即可,無需使用其它工具備份。
本人測(cè)試結(jié)果:我使用的是MySQL 5.0.8的,經(jīng)過以上方法測(cè)試失敗!
二、正規(guī)的方法(官方建議):
導(dǎo)出要用到MySQL的mysqldump工具,基本用法是:
mysqldump [OPTIONS] database [tables]
如果你不給定任何表,整個(gè)數(shù)據(jù)庫將被導(dǎo)出?!?/p>
一般使用的命令:
mysqldump --quick --database ondemand1 --u root >bacqup.sql
這樣就能把數(shù)據(jù)庫中ondemand1的表全部備份出來。
其中參數(shù)的格式是:--(兩橫杠,不是我們常用的單橫杠)
quick是在數(shù)據(jù)比較多的時(shí)候,不用該參數(shù)的話,所有的數(shù)據(jù)都會(huì)先在內(nèi)存緩存,接著才導(dǎo)出,這樣會(huì)導(dǎo)致服務(wù)器運(yùn)行減慢!
--u 必須要加一個(gè)用戶名,否則系統(tǒng)會(huì)提示你進(jìn)不了ODBC數(shù)據(jù)庫的。
>backup.sql則是你備份數(shù)據(jù)庫的目標(biāo)文件名
數(shù)據(jù)導(dǎo)入:
可以使用MySQL-Front工具把上面導(dǎo)出的backup.sql數(shù)據(jù)庫導(dǎo)入執(zhí)行。
以下導(dǎo)入方法未測(cè)試是否可行!
導(dǎo)出的是完整的SQL語句,所以用mysql客戶程序很容易就能把數(shù)據(jù)導(dǎo)入了:
mysqladmin create target_db_name
mysql target_db_name < backup-file.sql
聯(lián)系客服