需求介紹:将mongodb中的資料以檔案的方式導出:json或cvs格式
mongo 提供了mongoexport的工具,可以實作将庫中的資料以json或cvs的格式輸出到檔案中。mongoexport位于mongo安裝位置中的bin/目錄下。
mongoexport具體用法如下所示:
1. 使用help檢視參數說明


2. 用例說明:
将info庫中student的所有資訊以json格式導出到student_json.dat資料檔案中
輸出:


将info庫中student的id,name資訊以json格式導出到student_json.dat資料檔案中,并且限定“行數”是1
将info庫中student的所有資訊以cvs格式導出到student_cvs.dat資料檔案中
将info庫student“表”的name=張三的資訊以cvs格式導出到student_cvs.dat資料檔案中
注意:
a. --type=json 隻是控制每一條“記錄”是json格式,而整體的輸出檔案不是json 。如果想要控制整體的檔案資料格式是json數組,則需要使用--jsonArray 參數控制
擴充:
導入工具mongoimport
Mongodb中的mongoimport工具可以把一個特定格式檔案中的内容導入到指定的collection中。該工具可以導入JSON格式資料,也可以導入CSV格式資料。具體使用如下所示:


參數說明:
-h:指明資料庫主控端的IP
-u:指明資料庫的使用者名
-p:指明資料庫的密碼
-d:指明資料庫的名字
-c:指明collection的名字
-f:指明要導入那些列
示例:先删除students中的資料,并驗證
> db.students.remove()
> db.students.find()
>
然後再導入上面導出的students.dat檔案中的内容
-d:指明資料庫名,本例中為test
-c:指明collection名,本例中為students
students.dat:導入的檔案名
查詢students集合中的資料


證明資料導入成功
上面示範的是導入JSON格式的檔案中的内容,如果要導入CSV格式檔案中的内容,則需要通過--type參數指定導入格式,具體如下所示:
先删除資料
再導入之前導出的students_csv.dat檔案
-type:指明要導入的檔案格式
-headerline:指明第一行是列名,不需要導入
-file:指明要導入的檔案
查詢students集合,驗證導入是否成功:











說明已經導入成功