需求:
當(dāng)我們進(jìn)行數(shù)據(jù)庫(kù)遷移的時(shí)候可款,自然而然就會(huì)用到數(shù)據(jù)庫(kù)的導(dǎo)入和導(dǎo)出,這里講解下Mongodb的數(shù)據(jù)庫(kù)的 導(dǎo)出和導(dǎo)入。
解決方案:
1. 數(shù)據(jù)導(dǎo)出:mongoexport
1.1.概念:
Mongdb中的mongoexport 工具可以將collection 導(dǎo)出成JSON格式或者CSV格式的文件∠窠郑可以通過(guò)參數(shù)指定導(dǎo)出的數(shù)據(jù)項(xiàng),也可以根據(jù)指定的條件導(dǎo)出數(shù)據(jù)晋渺。
1.2. 語(yǔ)法:
mongoexport -d dbname -c collectionname -o fiepath --type json/csv -f field
參數(shù)說(shuō)明:
-d: 數(shù)據(jù)庫(kù)名
-c: collection名
-o: 輸出文件路徑
--type: 輸出的格式镰绎。默認(rèn)為json
-f: 輸出的字段,如果type為CSV木西,則需要加上 -f "字段名"
1.3. 實(shí)例:
mongoexport -d wcx2020 -c articles -o D:\mongodbBackup\mongosql.json --type json
2. 數(shù)據(jù)導(dǎo)入:mongoimport
2.1. 語(yǔ)法:
mongoexport -d dbname -c collectionname --file filepath -type json/csv -f field
參數(shù)說(shuō)明:
-d: 數(shù)據(jù)庫(kù)名
-c: collection名
--file: 導(dǎo)入文件路徑
--type: 輸出的格式畴栖。默認(rèn)為json
-f: 導(dǎo)入的字段名
2.2. 實(shí)例:
mongoimport -d wcx2020 -c articles -file D:\mongodbBackup\mongosql.json --type json
3. 數(shù)據(jù)備份(導(dǎo)出所有數(shù)據(jù))
3.1. 語(yǔ)法:
mongodump -h connection -d dbname -o filepath
參數(shù)說(shuō)明:
-h: 連接IP和端口號(hào)(默認(rèn)127.0.0.1:27017)
-d: 數(shù)據(jù)庫(kù)名
-o: 導(dǎo)出文件路徑
3.2. 實(shí)例:
mongodump -h 127.0.0.1 -d wcx2020 -o D:\mongodbBackup\
4. 數(shù)據(jù)恢復(fù)
4.1語(yǔ)法:
mongorestore -h connection -d dbname --dir filepath
參數(shù)說(shuō)明:
-h: 連接IP和端口號(hào)(默認(rèn)127.0.0.1:27017)
-d: 數(shù)據(jù)庫(kù)名
--dir: 備份的數(shù)據(jù)庫(kù)的路徑
4.2. 實(shí)例:
mongorestore -h 127.0.0.1 -d wcx2020 --dir D:\mongodbBackup
4.3. 注意事項(xiàng):
恢復(fù)的時(shí)候可以加--drop 覆蓋原來(lái)的數(shù)據(jù)庫(kù)(慎用),最好提前備份好當(dāng)前數(shù)據(jù)庫(kù)八千;同時(shí)要更改數(shù)據(jù)庫(kù)名驶臊,不然恢復(fù)會(huì)失敗挪挤。
參考文獻(xiàn): https://www.cnblogs.com/qingtianyu2015/p/5968400.html