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. 【elasticsearch】搜索过程详解

    elasticsearch 搜索过程详解 本文基于elasticsearch8.1.在es搜索中,经常会使用索引+星号,采用时间戳来进行搜索,比如aaaa-*在es中是怎么处理这类请求的呢?是对匹配的 ...

  2. 使用ABP SignalR重构消息服务(一)

    使用ABP SignalR重构消息服务 最近协助蟹老板升级新框架,维护基础设施服务,目前已经稳了. 早上蟹老板看到我进入公司,马上就叫停我,说我为什么左脚先进公司,你这样会让我很难做耶,这样把我给你一 ...

  3. Java基础——基本类型包装类

    一.概述: 将基本数据类型封装成对象 优点: 可以在对象中定义更多的功能方法操作该数据 常见用法: 用于基本类型与字符串之间的转换 基本数据类型 包装类 byte Byte short Short i ...

  4. json.dumps参数之解

    宝藏参数,懂的都懂^-^ 说明:编译后print()打印内容,此内容以字符串紧凑输出,且无顺序,中文不可读..   应用:使用pycharm做接口测试时,print()打印出的接口下行,如下图:   ...

  5. UIautomatorviewer连接设备报错Unexpected error while obtaining UI hierarchy

    先来看下现象哈,点击sdk/tools下uiautomatorviever.bat,点击连接设备的图标,本以为就这么简单,那你就错了: 是不是看到这个瞬间心情就不好了,那么我们该怎么解决这个问题呢,归 ...

  6. mycat分库分表 看这一篇就够了

    ​ 之前我们已经讲解过了数据的切分,主要有两种方式,分别是垂直切分和水平切分,所谓的垂直切分就是将不同的表分布在不同的数据库实例中,而水平切分指的是将一张表的数据按照不同的切分规则切分在不同实例的相同 ...

  7. Dubbo 使用过程中都遇到了些什么问题?

    在注册中心找不到对应的服务,检查 service 实现类是否添加了@service 注解 无法连接到注册中心,检查配置文件中的对应的测试 ip 是否正确

  8. @Autowired 注解?

    @Autowired 注解提供了更细粒度的控制,包括在何处以及如何完成自动装配.它的用法和@Required一样,修饰setter方法.构造器.属性或者具有任意名称和/或多个参数的PN方法.

  9. Mybatis 的一级、二级缓存?

    1)一级缓存: 基于 PerpetualCache 的 HashMap 本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该 Session 中的所有 C ...

  10. Gradle 使用@Value注册编译报错

    报错信息:Expected '$(student - name)' to be an inline constant of type java.lang.String in @org.springfr ...