当前位置:首页 > PHP教程 > php应用 > 列表

在MongoDB上如何进行数据的导入与导出

发布:smiling 来源: PHP粉丝网  添加日期:2020-03-22 18:28:06 浏览: 评论:0 

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文件

  1. [root@sx45a8 mongodb]# cd dump 
  2.  
  3. [root@sx45a8 dump]# ls 
  4.  
  5. shop 
  6.  
  7. [root@sx45a8 dump]# cd shop 
  8.  
  9. [root@sx45a8 shop]# ls 
  10.  
  11. order.bson  order.metadata.json 

五.二进制导入

./bin/mongorestore -d test --dir dump/shop/

-d 导入的库名

--dir 文件目录

二进制备份不仅可以备份数据还可以备份索引,而且备份比较小

Tags: MongoDB 数据的导入

分享到: