数码控科技猎奇Iphone动漫星座游戏电竞lolcosplay王者荣耀攻略allcnewsBLOGNEWSBLOGASKBLOGBLOGZSK全部技术问答问答技术问答it问答代码软件新闻开发博客电脑/网络手机/数码笔记本电脑互联网操作系统软件硬件编程开发360产品资源分享电脑知识文档中心IT全部全部分类全部分类技术牛文全部分类教程最新网页制作cms教程平面设计媒体动画操作系统网站运营网络安全服务器教程数据库工具网络安全软件教学vbscript正则表达式javascript批处理更多»编程更新教程更新游戏更新allitnewsJava新闻网络医疗信息化安全创业站长电商科技访谈域名会议专栏创业动态融资创投创业学院 / 产品经理创业公司人物访谈营销开发数据库服务器系统虚拟化云计算嵌入式移动开发作业作业1常见软件all电脑网络手机数码生活游戏体育运动明星影音休闲爱好文化艺术社会民生教育科学医疗健康金融管理情感社交地区其他电脑互联网软件硬件编程开发360相关产品手机平板其他电子产品摄影器材360硬件通讯智能设备购物时尚生活常识美容塑身服装服饰出行旅游交通汽车购房置业家居装修美食烹饪单机电脑游戏网页游戏电视游戏桌游棋牌游戏手机游戏小游戏掌机游戏客户端游戏集体游戏其他游戏体育赛事篮球足球其他运动球类运动赛车健身运动运动用品影视娱乐人物音乐动漫摄影摄像收藏宠物幽默搞笑起名花鸟鱼虫茶艺彩票星座占卜书画美术舞蹈小说图书器乐声乐小品相声戏剧戏曲手工艺品历史话题时事政治就业职场军事国防节日风俗法律法规宗教礼仪礼节自然灾害360维权社会人物升学入学人文社科外语资格考试公务员留学出国家庭教育学习方法语文物理生物工程学农业数学化学健康知识心理健康孕育早教内科外科妇产科儿科皮肤科五官科男科整形中医药品传染科其他疾病医院两性肿瘤科创业投资企业管理财务税务银行股票金融理财基金债券保险贸易商务文书国民经济爱情婚姻家庭烦恼北京上海重庆天津黑龙江吉林辽宁河北内蒙古山西陕西宁夏甘肃青海新疆西藏四川贵州云南河南湖北湖南山东江苏浙江安徽江西福建广东广西海南香港澳门台湾海外地区

MongoDB使用mongoexport和mongoimport命令,批量导出和导入JSON数据到同一张表的实例

来源:脚本之家  责任编辑:小易  

需求是这样的:需要修改数据库中某个表的所有数据,所以,要全部导出,然后修改,修改完之后,再把修改后的数据给再导入到mongo去。

具体如下:

备份,导出一张表为json文件

具体命令:

mongoexport --host localhost --port 27017 --username ezsonaruser --password 123456 --collection host_locations --db ezsonar_25 --out /root/host_locations.json

解释:

  • --host 后的 localhost:要导出数据库 ip
  • --port 后的 27017:要导出的实例节点端口号
  • --username 后的 ezsonaruser:数据库用户名
  • --password 后的 123456:数据库用户密码
  • --collection 后的 widgets-test:要导出的表名
  • --db 后的 ezsonar_25:要导出的表所在数据库名
  • --out 后的 /root/host_locations.json:要导出的文件路径(默认为当前文件夹)

导出来后的文件,打开的样子是酱紫的。

然后,你就可以在编辑器里面修改啦。修改完之后,再保存。保存之后就可以再导入到数据库啦。

导入,批量插入json数据到一张表去

具体命令:

mongoimport --host localhost --port 27017 --username ezsonaruser --password 123456 --collection host_locations_test --db ezsonar_25 --file /root/shaql/host_locations.json

解释:

  • -- host 后的 localhost:要导入的数据库 ip
  • --port 后的 27017:要导入的实例节点端口号
  • --username 后的 ezsonaruser:数据库用户名
  • --password 后的 123456:数据库用户密码
  • --collection 后的 host_locations_test:要导入的表名
  • --db 后的 ezsonar_25:要导入的表所在数据库名
  • --file 后的 /root/shaql/host_locations.json:要导入的源文件路径(默认为当前文件夹)

需要注意的地方:

1,不需要进入mongo命令行之后,就可以直接使用上面的2个导入导出命令。

2,导入导出的json文件,你不要随意换行,导出来的就是一行一条数据,你就原封不动的给修改完直接保存,不要换行。不要使用txt这么low的编辑器啦,换个高级点的编辑器吧。

最后,附上这个命令的help说明图

mongoimport 导入的help信息展示如下

mongoexport 导出的help信息展示如下

另:

  • -f, --fields:代表集合中的字段,可以根据设置选择导出的字段;
  • --type:代表导出输出的文件类型,包括csv和json文件;
  •  --skip:跳过指定数量的数据;
  • --limit:读取指定数量的数据记录;
  • --sort:对数据进行排序,可以通过参数指定排序的字段,并使用 1 和 -1 来指定排序的方式,其中 1 为升序排列,而-1是用于降序排列,如sort({KEY:1})。
#导出类型为json,数据库:mapdb,集合:bike 字段:bikeId,lat,lng,current_time,source ,条件为source字段为ofo第一条数据
mongoexport --port 27030 -u sa -p Expressin@0618 -d mapdb -c bike -f bikeId,lat,lng,current_time,source --type=json -o bike.csv --query='{"source":"ofo"}' --limit=1
#导出类型为csv,数据库:mapdb,集合:bike 字段:bikeId,lat,lng,current_time,source ,条件为source字段为ofo第一条数据
mongoexport --port 27030 -u sa -p Expressin@0618 -d mapdb -c bike -f bikeId,lat,lng,current_time,source --type=csv -o bike.csv --query='{"source":"ofo"}' --limit=1

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

您可能感兴趣的文章:


  • 本文相关:
  • 利用mongoose让json数据直接插入或更新到mongodb
  • json 的正确用法探讨:pyhong、mongodb、javascript与ajax
  • python读取json文件并将数据插入到mongodb的方法
  • mongodb执行mongoexport时的异常及分析(数字类型的查询)
  • mongodb批量将时间戳转为通用日期格式示例代码
  • python实现批量读取图片并存入mongodb数据库的方法示例
  • mongodb批量删除gridfs文件实例
  • mongodb单表数据的导出和恢复实例讲解
  • mongodb备份、还原、导出、导入、克隆操作示例
  • 深入分析mongodb数据的导入导出
  • mongodb导出查询结果到文件例子
  • mongodb 数据库操作--备份 还原 导出 导入
  • windows下mongodb安装与使用图文教程(整理)
  • cgroup限制mongodb进程内存大小
  • mongodb与mysql常用操作语句对照
  • mongodb 3.2.5安装详细过程
  • 【mongodb for java】java操作mongodb数据库
  • mongodb 管道的介绍及操作符实例
  • windows或linux系统中备份和恢复mongodb数据的教程
  • mongodb中使用distinct去重的简单方法
  • mongodb 添加用户及权限设置详解
  • mongodb为用户设置访问权限
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved