Mongo导入导出

一 导出工具mongoexport
1、简介

  Mongodb中的mongoexport工具可以把一个collection导出成JSON格式或CSV格式(类似于表格的形式)的文件。可以通过参数指定导出的数据项,也可以根据指定的条件导出数据。

2、参数解析

  -h:指明数据库宿主机的IP
  -u:指明数据库的用户名
  -p:指明数据库的密码
  -d:指明数据库的名字
  -c:指明collection的名字
  -f:指明要导出那些列
  -o:指明到要导出的文件名
  -q:指明导出数据的过滤条件

3、实例

  1)导出user集合中的数据到文件user.dat

./mongoexport -d my_mongodb -c user -o user.dat

  2)将foo库中的t1集合导出到json文件

    ./mongoexport -d foo -c t1 -o /data/t1.json   

  3)导出CSV格式的数据

    ./mongoexport -d foo -c t2 --csv -f age,name -o /data/t2.csv

  4)指定过滤条件导出数据

    ./mongoexport -h 10.100.30.130 --port 27017 -d zhongtudao -c hand_result --type=csv -f datetime,url,show_count,click_count -q '{datetime:"20170402"}' -o ./20170402.csv 
二 导入工具mongoexport
1、简介

  Mongodb中的mongoimport工具可以把一个特定格式文件中的内容导入到指定的collection中。该工具可以导入JSON格式数据,也可以导入CSV格式数据。

2、参数解析

  -h:指明数据库宿主机的IP
  -u:指明数据库的用户名
  -p:指明数据库的密码
  -d:指明数据库的名字
  -c:指明collection的名字
  -f:指明要导入那些列
  -type:指明要导入的文件格式
  -headerline:指明第一行是列名,不需要导入 -file:指明要导入的文件

3、实例

  1)导入JSON数据

./bin/mongoimport -d test -c students students.dat

  2)导入CSV格式文件中的内容

./bin/mongoimport -d test -c students --type csv --headerline --file students_csv.dat  
三 异常
1、server returned error on SASL authentication step: Authentication failed.

  1)原因
   数据库实例的用户列表为空
  2)解决方法
   后面加个参数 –authenticationDatabase admin或者用权限用户操作

四 注意事项

  1)mongoimport 执行导入前,新数据库中没有 XX 表一样可以导入成功;
  2)mongoexport 和 mongoimport 所需的各个参数输入的先后顺序不严格;
  3)对于副本集,mongoexport 的数据导出可以是副本集中的 primary 节点,也可以是 secondary 节点;
  4)对于副本集,mongoimport 的数据导入必须是 primary 节点;
  5)对于大数据量的导出,用 mongoexport 操作完全不会有生产问题;
  6)对于大数据量的导入(超过 500 MB),用 mongoimport 操作的话会很容易将 primary 7)节点拖垮,因为这会导致全量同步导致主节点崩溃,所以要避免生产环境中大数据量的导入。正确的做法是先建立单点,导入,之后再建立副本集。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值