這里講的是Linux系統(tǒng)下的操作
首先你要安裝數(shù)據(jù)庫(kù)挑格,而且配置好環(huán)境變量
現(xiàn)在說(shuō)說(shuō)數(shù)據(jù)庫(kù)的導(dǎo)出:
mysqldump -h hostname -u username -p databasename > databasename.sql
這里說(shuō)簡(jiǎn)單一下這些參數(shù)的意義
-h 后面接的是主機(jī)名(如果是本機(jī)可以不需要)
-u 登錄數(shù)據(jù)庫(kù)的用戶(hù)名
-p 后面接的是密碼,但是一般不會(huì)將密碼文明寫(xiě)出來(lái),不寫(xiě)會(huì)執(zhí)行的時(shí)候要你輸入密碼
再說(shuō)一點(diǎn)佩谷,如果需要備份多個(gè)數(shù)據(jù)庫(kù)需要添加--databases參數(shù)
例:
mysqldump -h hostname -u username -p?--databases databasename1 databasename2 > backMysql.sql
如果你只想要導(dǎo)出數(shù)據(jù)庫(kù)的表結(jié)構(gòu)壤巷,可以在數(shù)據(jù)庫(kù)前面加個(gè)-d參數(shù)贯钩,這樣就不會(huì)將數(shù)據(jù)導(dǎo)出來(lái)
導(dǎo)入:
數(shù)據(jù)庫(kù)的導(dǎo)入就簡(jiǎn)單多了选浑,你需要一個(gè)備份好的數(shù)據(jù)庫(kù)腳本
然后登陸到數(shù)據(jù)庫(kù),執(zhí)行
source 你的數(shù)據(jù)庫(kù)備份的路徑
最后說(shuō)一下mysqldump命令的一些常用參數(shù)吧
-d 結(jié)構(gòu)(--no-data:不導(dǎo)出任何數(shù)據(jù)顿仇,只導(dǎo)出數(shù)據(jù)庫(kù)表結(jié)構(gòu))
-t 數(shù)據(jù)(--no-create-info:只導(dǎo)出數(shù)據(jù)淘正,而不添加CREATE TABLE 語(yǔ)句)
-n (--no-create-db:只導(dǎo)出數(shù)據(jù)摆马,而不添加CREATE DATABASE 語(yǔ)句)
-R (--routines:導(dǎo)出存儲(chǔ)過(guò)程以及自定義函數(shù))
-E (--events:導(dǎo)出事件)
--triggers (默認(rèn)導(dǎo)出觸發(fā)器,使用--skip-triggers屏蔽導(dǎo)出)
-B (--databases:導(dǎo)出數(shù)據(jù)庫(kù)列表鸿吆,單個(gè)庫(kù)時(shí)可省略)
--tables 表列表(單個(gè)表時(shí)可省略)
一些參數(shù)的組合使用
同時(shí)導(dǎo)出結(jié)構(gòu)以及數(shù)據(jù)時(shí)可同時(shí)省略-d和-t
同時(shí) 不 導(dǎo)出結(jié)構(gòu)和數(shù)據(jù)可使用-ntd
只導(dǎo)出存儲(chǔ)過(guò)程和函數(shù)可使用-R -ntd
導(dǎo)出所有(結(jié)構(gòu)&數(shù)據(jù)&存儲(chǔ)過(guò)程&函數(shù)&事件&觸發(fā)器)使用-R -E(相當(dāng)于①囤采,省略了-d -t;觸發(fā)器默認(rèn)導(dǎo)出)
只導(dǎo)出結(jié)構(gòu)&函數(shù)&事件&觸發(fā)器使用 -R -E -d
所以導(dǎo)出存儲(chǔ)過(guò)程及函數(shù)可以這么寫(xiě)
mysqldump -hhostname -uusername -p -ntd -R databasename > prorandfunc.sql