12-数据库工具

nobility 发布于 2022-12-24 1771 次阅读


数据库工具

MongoDB4.4版本开始数据库攻击与数据库分开发布,数据库工具可以单独安装,安装包可从MongoDB官网获取

wget -P /opt https://fastdl.mongodb.org/tools/db/mongodb-database-tools-rhel70-x86_64-100.2.0.tgz #下载安装包
tar -zxvf /opt/mongodb-database-tools-rhel70-x86_64-100.2.0.tgz #解压安装包
mv /opt/mongodb-database-tools-rhel70-x86_64-100.2.0/bin/* /usr/local/bin/ #将命令移动到/usr/local/bin/下
rm -rf /opt/mongodb-database-tools-rhel70-x86_64-100.2.0* #可选择删除安装文件
命令 描述
mongoexport 导入JSON或CSV数据文件
mongoimport 导出JSON或CSV数据文件
mongostat 监控数据库服务器进程状态
mongotop 监控各个集合上的读写时间
bsondump 将二进制BSON文件转换为JSON文件
mongodump 导出二进制数据文件
mongorestore 导入二进制数据文件
mongofiles GridFS工具

数据导入导出

  • mongoexport:导出JSON或CSV数据文件
    • host:主机IP,默认本地
    • port:端口号,默认27017
    • db:指定数据库名
    • collection:指定集合名
    • type:文件格式类型
      • csv:首行为字段名,必须指定fields参数
      • json_id默认导出,未指定fields默认全部字段都导出
    • fields:指定导出的字段,多个字段使用逗号分隔,对于内嵌文档可以使用点运算符
    • query:根据查询语句导出数据,查询语句需要使用单引号包裹
    • sort:指定排序规则文档,排序规则文档需要使用单引号告包裹,导出数据排序后的内容
    • limit:指定文档条数,导出指定条数的文档
    • skip:指定跳过的文档数量,导出跳过指定文档的内容
    • out:输出文件
    • u:用户名
    • p:密码
    • authenticationDatabase:验证数据库
  • mongoimport:导出JSON或CSV数据文件
    • host:主机IP,默认本地
    • port:端口号,默认27017
    • db:指定数据库名
    • collection:指定集合名
    • type:文件格式类型,可以是csvjson
    • headerline:在导入CSV文件时,说明指定数据文件中的第一行为数据格式,而不是数据,与fields参数只能二选一
    • fields:在导入CSV文件时,自定义行首数据格式,CSV首行将也会按照数据行算,与headerline参数只能二选一
    • upsertFields:指定对比字段,逗号分隔,若不指定则默认是对比_id字段,所以导入CSV文件时,会由于没有_id字段,导致多次导入时数据会重复
    • drop:导入数据之前将数据库中数据清空
    • file:输入文件
    • u:用户名
    • p:密码
    • authenticationDatabase:验证数据库
    • stopOnError:导入错误时停止导入
    • maintailInsertionOrder:顺序导入

数据库监控

监控用户需要有clusterMonitor角色

  • mongostat:监控数据库服务器进程状态,默认每隔一秒抓取一次信息,可在命令结尾加一个数字指定间隔秒数
    • host:主机IP,默认本地
    • port:端口号,默认27017
    • u:用户名
    • p:密码
    • authenticationDatabase:验证数据库
    • rowcount:指定抓取信息的次数
    • o:指定想抓取的信息字段,使用双引号包裹,不同字段之间使用逗号分隔
  • mongotop:监控各个集合(只显式读写频率前七名的集合)上的读写时间,默认每隔一秒抓取一次信息,可在命令结尾加一个数字指定间隔秒数
    • host:主机IP,默认本地
    • port:端口号,默认27017
    • u:用户名
    • p:密码
    • authenticationDatabase:验证数据库
    • rowcount:指定抓取信息的次数

监控消息

字段明 描述
command 每秒执行的命令数
dirty 数据库引擎缓存脏空间占比
used 数据库引擎缓存使用量占比
vsize 虚拟内存使用量
res 常驻内存使用量
conn 当前连接数
time 时间
此作者没有提供个人介绍
最后更新于 2022-12-24