1. 程式人生 > >Mongodb數據導出工具mongoexport和導入工具mongoimport使用

Mongodb數據導出工具mongoexport和導入工具mongoimport使用

div cti 令行 數據庫名 port OS nts 之前 gpo

如圖所示,兩個工具位於mongodb安裝目錄的bin目錄下

    技術分享圖片

下面介紹一下兩者的使用方法:

一、導出工具mongoexport

Mongodb中的mongoexport工具可以把一個collection導出成JSON格式或CSV格式的文件。可以通過參數指定導出的數據項,也可以根據指定的條件導出數據。

可通過 mongoexport --help 命令查看具體使用方法

技術分享圖片

參數說明:

  • -h:指明數據庫宿主機的IP
  • -u:指明數據庫的用戶名
  • -p:指明數據庫的密碼
  • -d:指明數據庫的名字
  • -c:指明collection的名字
  • -f:指明要導出那些列
  • -o:指明到要導出的文件名
  • -q:指明導出數據的過濾條件

示例:

導出goods數據庫下students集合的數據

技術分享圖片

執行圖中命令

技術分享圖片

bin目錄下生成students.dat文件,內容如下(也可在命令行中執行 type students.dat 查看)

技術分享圖片

從上面的結果可以看出,我們在導出數據時沒有顯示指定導出樣式 ,默認導出了JSON格式的數據。實際情況下常常需要導出csv格式的數據,命令如下

mongoexport -d goods -c students --csv -f classid,name,age -o students_csv.dat  

參數詳解:

  • -d:指明使用的庫,本例中為goods
  • -c:指明要導出的集合,本例中為students
  • -o:指明要導出的文件名,本例中為students_csv.dat
  • -csv:指明要導出為csv格式
  • -f:指明需要導出classid、name、age這3列的數據

查看文件

技術分享圖片

二、導入工具mongoimport

Mongodb中的mongoimport工具可以把一個特定格式文件中的內容導入到指定的collection中。該工具可以導入JSON格式數據,也可以導入CSV格式數據。

可通過 mongoimport --help 命令查看具體使用方法

技術分享圖片

參數說明:

  • -h:指明數據庫宿主機的IP
  • -u:指明數據庫的用戶名
  • -p:指明數據庫的密碼
  • -d:指明數據庫的名字
  • -c:指明collection的名字
  • -f:指明要導入那些列

示例

先刪除students集合數據,驗證

db.students.remove({});
db.students.find();

導入之前導出的students.dat文件

技術分享圖片

上面演示的是導入JSON格式的文件中的內容,如果要導入CSV格式文件中的內容,則需要通過--type參數指定導入格式

mongoimport -d goods -c students --type csv --headerline --file students_csv.dat   

參數詳解

  • -d:指明數據庫名,本例中為goods
  • -c:指明collection名,本例中為students
  • -type:指明要導入的文件格式
  • -headerline:指明第一行是列名,不需要導入
  • -file:指明要導入的文件
  • students_csv.dat:導入的文件名

也可借助工具進行導入導出,如: NoSQL Manager for MongoDB 提供了多種格式的導入導出

技術分享圖片

Mongodb數據導出工具mongoexport和導入工具mongoimport使用