首頁  >  文章  >  後端開發  >  在MongoDB上如何進行資料的導入與匯出

在MongoDB上如何進行資料的導入與匯出

little bottle
little bottle轉載
2019-04-20 14:28:323750瀏覽

MongoDB是一個基於分散式檔案儲存的資料庫,下面我將就MongoDB的導入與導出給大家作出簡要敘述,感興趣的朋友可以了解一下。

一.導入與匯出可以操作本機的mongodb也可以是遠端的mongodb,通用選項:

-h host   主机
--port port    端口
-u username 用户名
-p password   密码

如果mongodb沒有帳號密碼且是從本機導覽可以忽略上面四個參數

二.匯出:

使用mongodb/bin/mongoexport檔:

cd /usr/local/mongodb
./bin/mongoexport -d shop -c order -f name,content -q '{_id:{$lte:100}}' -o order.json
-d  库名
-c  表名
-f  field1,field2...要导出的字段
-q  查询条件
-o  导出的文件名  

預設匯出的資料格式為json格式,如果為了便於和傳統資料庫交換資料想匯出csv格式需要指定檔案類型--csv,上面的匯出指令可以修改為:

./bin/mongoexport -d shop -c order -f name,content -q '{_id:{$lte:100}}' --csv -o order.csv

三.導入:

./bin/mongoimport -d shop -c good --type json --file ./order.json
-d 导入的数据库
-c 导入的表(不存在自动创建)
--type  csv | json(默认json)
--file 文件路径

注意:當導入的檔案格式為csv時,需要增加一個--headerline,使用第一行作為欄位名稱:

./bin/mongoimport -d shop -c good --type csv --headerline --file ./order.csv

四.二進位匯出

mongodump 匯出二進位bson結構的資料及json結構的索引資訊

./bin/mongodump -d shop  -c order 
-d  库名
-c  表名(不指定表默认导出全部表)
-q  查询表达式
-o  文件路径名(默认导出到mongodb/dump目录下)

匯出之後在mongodb/dump/databaseName/目錄下有一個.bson檔案和一個.json檔案

[root@sx45a8 mongodb]# cd dump
[root@sx45a8 dump]# ls
shop
[root@sx45a8 dump]# cd shop
[root@sx45a8 shop]# ls
order.bson  order.metadata.json

#五.二進位匯入

./bin/mongorestore -d test --dir dump/shop/
-d 导入的库名
--dir 文件目录

二進位備份不僅可以備份資料還可以備份索引,而且備份比較小

# 相關教學:MongoDB影片教學  

以上是在MongoDB上如何進行資料的導入與匯出的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除