MongoDB 提供的工具

官网

https://www.mongodb.com/

工具

MongoDB 提供了一些工具,:

  • MongoDB Compass: MongoDB数据库可视化工具(类似PL/SQL)
  • MongoDB Shell : 连接配置数据库
  • MongoDB Database Tools:包含了mongoimportmongoexport,mongodump等工具

下载地址

https://www.mongodb.com/try/download/tools

MongoDB Database Tools

官方文档:https://docs.mongodb.com/database-tools/?_ga=2.29559871.1661032572.1642390415-20619496.1636351487

数据库工具提供了操作数据库的一些脚本:

  • 二进制导入导出

    • mongodump : 将mongod 实例内容以二进制格式导出
    • mongorestore : 转储当前数据库数据到另一个数据库
    • bsondump : BSON dump文件转化为JSON
  • 数据导入导出
    • mongoimport : 导入扩展名为JSON,CSV或TSV的导出文件的内容
    • mongoexport: 以JSON格式或CSV格式从mongod实例中导出数据
  • 诊断工具
    • mongostat: 提供一个显示当前正在运行的mongod实例的状态的视图
    • mongotop : 提供一个显示mongod实例读取和写入数据花费的时间的视图
  • GridFS工具
    • mongofile : 支持在GridFS对象中操作存储在MongoDB实例中的文件。

脚本

1.使用 mongoexport 导出某个任务号的JSON数据

#!/bin/bash
echo "校验参数..."
taskNo=$1
if [ -z $taskNo ]
then
echo "taskNo 不允许为空!"
exit 2
fi
echo "export taskNo[${taskNo}] hdmap data ..."
# 日期
cur_date=`date +%Y%m%d%H%M%S`
mongo_db_tool_dir="/home/public/Soft/mongodb-5.0.4"
# 保存路径
save_path="/home/public/Soft/mongodb-5.0.4/hdmap_data_export/${cur_date}"
# 创建保存路径
mkdir -p ${save_path}
# 循环数组
for table in "my_task" "my_task_detail" "my_task_rel"
do
echo "start export table[${table}] data to ${save_path}/${table}.json"
if [ ${table} = "my_task_detail" ] || [ ${table} = "my_task_rel" ]
then
# 查询条件为tasknos数组包含taskNo的数据
${mongo_db_tool_dir}/tool/bin/mongoexport --host=127.0.0.1 --port=27018 --db=task_db --collection=${table} --type=json --jsonArray --query='{"tasknos":{"$all":["'${taskNo}'"]}}' --out=${save_path}/${table}.json
if [ $? -ne 0 ]
then
echo "export table [${table}] failed!"
else
echo "export table [${table}] success."
fi
else
# 查询条件为task_no为 taskNo的数据
${mongo_db_tool_dir}/tool/bin/mongoexport --host=127.0.0.1 --port=27018 --db=task_db --collection=${table} --type=json --jsonArray --query='{"task_no":"'${taskNo}'"}' --out=${save_path}/${table}.json
if [ $? -ne 0 ]
then
echo "export table [${table}] failed!"
else
echo "export table [${table}] success."
fi
fi
done
echo "export hdmap data over."

MongoDB 提供的工具的更多相关文章

  1. MongoDB中聚合工具Aggregate等的介绍与使用

    Aggregate是MongoDB提供的众多工具中的比较重要的一个,类似于SQL语句中的GROUP BY.聚合工具可以让开发人员直接使用MongoDB原生的命令操作数据库中的数据,并且按照要求进行聚合 ...

  2. 最佳的MongoDB客户端管理工具

    <最佳的MongoDB客户端管理工具> 作者:chszs,未经博主允许不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs 一个好的MongoD ...

  3. Mongodb数据导出工具mongoexport和导入工具mongoimport使用

    如图所示,两个工具位于mongodb安装目录的bin目录下 下面介绍一下两者的使用方法: 一.导出工具mongoexport Mongodb中的mongoexport工具可以把一个collection ...

  4. MongoDB Compass管理工具下载、安装和使用

    内容来自:https://jingyan.baidu.com/article/925f8cb884f6f8c0dce0565a.html ,https://blog.csdn.net/bg101775 ...

  5. MongoDB 逻辑还原工具mongorestore

    mongorestore是官方提供用来还原导入由mongodump导出生成的二进制备份文件的工具,通常与mongodump配合使用,关于mongodump工具的使用可以参考另一篇博文:MongoDB ...

  6. 使用mongodb提供的dotnet core sdk进行地理位置运算

    mongodb提供地理位置运算功能,比较常用的场景比如,先判断用户所在的街道,然后看看街道附近有啥餐厅,然后算算用户与餐厅的距离什么的,官网里提供了比较详细的demo介绍不同api的用法 此处记录下d ...

  7. mongoDB GUI客户端工具大全

    网易blog - MongoDB GUI客户端工具大全   oschina - MonjaDB 1.0.2 发布,MongoDB 的 GUI 客户端   oschina创建人红薯对MonjaDB官方文 ...

  8. ftrace 提供的工具函数

    内核头文件 include/linux/kernel.h 中描述了 ftrace 提供的工具函数的原型,这些函数包括 trace_printk.tracing_on/tracing_off 等.本文通 ...

  9. MongoDB 可视化管理工具

    MongoDB 可视化管理工具 (2011年10月-至今)   正文 该项目从2011年10月开始开发,知道现在已经有整整5年了.MongoDB也从一开始的大红大紫到现在趋于平淡.MongoCola这 ...

随机推荐

  1. MATLAB绘制三角网及三维网线

    今天博主给大家介绍一些比较常见的可视化操作,绘制三角网及三维网线. 三角网是由一系列连续三角形构成的网状的平面控制图形,是三角测量中布设连续三角形的两种主要扩展形式,同时向各方向扩展而构成网状,优点为 ...

  2. 6张图为你分析Kafka Producer 消息缓存模型

    摘要:发送消息的时候, 当Broker挂掉了,消息体还能写入到消息缓存中吗? 本文分享自华为云社区<图解Kafka Producer 消息缓存模型>,作者:石臻臻的杂货铺. 在阅读本文之前 ...

  3. 如何在MySQL中增加一列

    如果想在一个已经建好的表中添加一列,可以使用诸如: alter table TABLE_NAME add column NEW_COLUMN_NAME varchar(255) not null; 这 ...

  4. Docker安装与基本命令

    docker安装 Ubuntu 更新apt包索引 sudo apt-get update 更新apt包索引 sudo apt-get upgrade 安装docker sudo apt-get ins ...

  5. 线程池提交任务时submit()和execute()的区别

    因为之前一直是用的execute方法,最近有个情况需要用到submit方法,所以研究了下. 他们的区别: 1.execut()可以添加一个Runable任务,submit()不仅可以添加Runable ...

  6. 西门子S7-1200PLC不让下载一直报“模块具有激活的测试和调试功能,防止下载到设备”解决方法

    错误如图 这是因为PLC被强制了,导致下载会报这类错误.取消强制就可以下载. 或者将cpu重置为出厂设置,也能再次下载. 参考:https://www.ad.siemens.com.cn/servic ...

  7. 什么是 Redis?

    Redis 是完全开源免费的,遵守 BSD 协议,是一个高性能的 key-value 数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis 支持数据的持久化,可以 ...

  8. spring-boot-learning-spring Security

    SpringSecurity的简单原理: 一旦启用了Spring Security,Spring IoC容器就会为你创建一个名称为springSecurityFilterChain 的Spring B ...

  9. Python - Datetime库简介

  10. freeswitch对接WEBRTC的一个candidate问题

    概述 近几年,WEBRTC的完善与成熟,使得网页上使用webrtc的应用越来越多. Freeswitch是一个开源的软交换平台,可以直接支持webrtc的对接方式. 最近在测试fs和webrtc的对接 ...