在MySql的日常使用中不可避免的會(huì)出現(xiàn)數(shù)據(jù)遷移的時(shí)候。如:更換數(shù)據(jù)庫(kù)服務(wù)器、更換數(shù)據(jù)庫(kù)類型。
小插曲:我國(guó)的文字真是博大精深,“遷移”這個(gè)詞能把我們常做的數(shù)據(jù)庫(kù)的遷移都表達(dá)清楚。如:
- 釋義1:搬移;從一處搬到另一處。(對(duì)應(yīng):更換數(shù)據(jù)庫(kù)服務(wù)器)
- 釋義2:變化、變遷。(對(duì)應(yīng):更換數(shù)據(jù)庫(kù)類型)。
1、更換數(shù)據(jù)庫(kù)服務(wù)器
可采用數(shù)據(jù)庫(kù)備份程序:mysqldump
mysqldump客戶端可用來轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù)或搜集數(shù)據(jù)庫(kù)進(jìn)行備份或?qū)?shù)據(jù)轉(zhuǎn)移到另一個(gè)SQL服務(wù)器(不一定是一個(gè)MySQL服務(wù)器)。轉(zhuǎn)儲(chǔ)包含創(chuàng)建表和/或裝載表的SQL語句。
有3種方式來調(diào)用mysqldump:
shell> mysqldump [options] db_name [tables]
shell> mysqldump [options] —database DB1 [DB2 DB3...]
shell> mysqldump [options] –all–database
如果沒有指定任何表或使用了—database或–all–database選項(xiàng),則轉(zhuǎn)儲(chǔ)整個(gè)數(shù)據(jù)庫(kù)。
要想獲得你的版本的mysqldump支持的選項(xiàng),執(zhí)行mysqldump —help。
如果運(yùn)行mysqldump沒有–quick或–opt選項(xiàng),mysqldump在轉(zhuǎn)儲(chǔ)結(jié)果前將整個(gè)結(jié)果集裝入內(nèi)存。如果轉(zhuǎn)儲(chǔ)大數(shù)據(jù)庫(kù)可能會(huì)出現(xiàn)問題。該選項(xiàng)默認(rèn)啟用,但可以用–skip-opt禁用。
如果使用最新版本的mysqldump程序生成一個(gè)轉(zhuǎn)儲(chǔ)重裝到很舊版本的MySQL服務(wù)器中,不應(yīng)使用–opt或-e選項(xiàng)。
mysqldump最常用于備份一個(gè)整個(gè)的數(shù)據(jù)庫(kù):
shell> mysqldump –opt db_name > backup-file.sql
你可以這樣將轉(zhuǎn)儲(chǔ)文件讀回到服務(wù)器:
shell> mysql db_name < backup-file.sql
或者為:
shell> mysql -e “source /path-to–backup/backup-file.sql” db_name
mysqldump也可用于從一個(gè)MySQL服務(wù)器向另一個(gè)服務(wù)器復(fù)制數(shù)據(jù)時(shí)裝載數(shù)據(jù)庫(kù):
shell> mysqldump –opt db_name | mysql –host=remote_host -C db_name
2、更換數(shù)據(jù)庫(kù)類型
可采用:MySQL GUI Tools
MySQL GUI Tools一個(gè)可視化界面的MySQL數(shù)據(jù)庫(kù)管理控制臺(tái),提供了四個(gè)非常好用的圖形化應(yīng)用程序,方便數(shù)據(jù)庫(kù)管理和數(shù)據(jù)查詢。這些圖形化管理工具可以大大提 高數(shù)據(jù)庫(kù)管理、備份、遷移和查詢效率,即使沒有豐富的SQL語言基礎(chǔ)的用戶也可以應(yīng)用自如。它們分別是:
MySQL Migration Toolkit:數(shù)據(jù)庫(kù)遷移
MySQL Administrator:MySQL管理器
MySQL Query Browser:用于數(shù)據(jù)查詢的圖形化客戶端
MySQL Workbench:DB Design工具(zsh)
下載地址:http://dev.mysql.com/downloads/gui-tools/5.0.html