
工具介绍
1.1官网地址
https://docs.mongodb.com/manual/reference/program/1.2 mongd
mongod是MongoDB系统的主要守护进程,他处理数据请求,管理数据访问,并执行后台管理操作。启动进程制定配置文件,控制数据库的行为1.3
mongos对于“MongoDB Shard”,是用于处理来自应用层的查询的MongoDB分片配置的路由服务,并确定此数据在分片集群中的位置,以完成这些操作。从应用程序的角度来看,一个mongos实例与其他任何MongoDB实例行为相同1.4 Mongostat
Mongostat 命令可以快速概括当前正在运行的Mongd或者mongos实例的状态。mongostat在功能上类似于UNIX/Linux文件系统vmstat,但提供有关的数据mongd和mongos实例1.5Mongtop
Mongotop提供了一种跟踪MongDB实例读取和写入数据的时间量的方法。mongotop提供每个收集级别的统计信息。默认情况下每秒返回一次值1.6 Mongooplog
Mongooplog是一个简单的工具,可以从远程服务器的复制 oplog轮训操作,并将其应用于本地服务器。此功能支持某些类型的实时迁移,这些迁移要求源服务器保持联机并在整个迁移过程中运行。通常,此命令采用以下形式:
mongoplog -from --host 1.7 Mongoplog
Mongoperf是一种独立于MongoDB检查磁盘I/O性能的实用程序。它是随机磁盘I/O的测试并呈现结果。
例如:
echo "{nThreads:16, fileSizeMB:10000, r:true, w:true}"| mongoperf
在这个操作中:
mongoperf测试直接物理机随机读写io的,实用16个并发阅读器线程
mongoperf实用10GB的测试文件
或者参数写入文件里mongoperf < config1.1
[root@mongod-1 ~]# cd /data/mongodb/bin/
[root@mongod-1 bin]# ll
total 249248
-rwxr-xr-x 1 root root 6153912 Mar 13 2019 bsondump
-rwxr-xr-x 1 root root 29513856 Mar 13 2019 mongo
-rwxr-xr-x 1 root root 54167960 Mar 13 2019 mongod
-rwxr-xr-x 1 root root 9033384 Mar 13 2019 mongodump
-rwxr-xr-x 1 root root 8546776 Mar 13 2019 mongoexport
-rwxr-xr-x 1 root root 8393736 Mar 13 2019 mongofiles
-rwxr-xr-x 1 root root 8696616 Mar 13 2019 mongoimport
-rwxr-xr-x 1 root root 8107936 Mar 13 2019 mongooplog
-rwxr-xr-x 1 root root 53544104 Mar 13 2019 mongoperf
-rwxr-xr-x 1 root root 12027552 Mar 13 2019 mongoreplay
-rwxr-xr-x 1 root root 9164264 Mar 13 2019 mongorestore
-rwxr-xr-x 1 root root 30804936 Mar 13 2019 mongos
-rwxr-xr-x 1 root root 8713128 Mar 13 2019 mongostat
-rwxr-xr-x 1 root root 8329816 Mar 13 2019 mongotop
[root@mongod-1 bin]#mongod: #MongoDB 的守护进程(daemon),用于启动 MongoDB 数据库服务器。它是 MongoDB 的核心服务,负责处理客户端的请求、数据的存储与检索等。
mongo: #MongoDB 的命令行界面(CLI),用于与 MongoDB 服务器进行交互。通过它,您可以执行数据库命令、查询数据、管理数据库和用户等。
mongodump: #用于导出 MongoDB 数据库中的数据。它可以将整个数据库或指定的集合导出为 BSON 格式的文件,这些文件之后可以使用 mongorestore 工具还原。
mongorestore: # 与 mongodump 相反,该工具用于还原之前使用 mongodump 导出的数据。它可以将 BSON 格式的文件还原到 MongoDB 数据库中。
mongoexport: #用于将数据从 MongoDB 导出为 JSON 或 CSV 格式的文件。与 mongodump 不同,mongoexport 导出的是人类可读的格式,便于在其他系统或应用程序中使用。
mongoimport: #用于将 JSON、CSV 或 TSV 格式的文件导入到 MongoDB 数据库中。它允许您将数据从其他系统或应用程序迁移到 MongoDB。
bsondump: #用于将 BSON 格式的文件转储为人类可读的 JSON 格式。这对于分析和调试 BSON 文件非常有用。
mongofiles: #该工具允许您通过 MongoDB 的 GridFS 存储和检索文件。GridFS 是 MongoDB 提供的用于存储和检索大文件的文件系统规范。
mongooplog: #该用于访问 MongoDB 的操作日志(oplog)。oplog 是 MongoDB 复制和故障恢复的重要组件,记录了数据库的所有变更操作。
mongostat: #该工具用于实时监控 MongoDB 的性能状态。它可以显示数据库的连接数、操作数、内存使用情况等关键指标。
mongotop: #该工具用于跟踪 MongoDB 中各个集合的读写操作。它可以帮助您识别哪些集合正在消耗最多的资源。
mongoperf: #该工具(在某些版本中可能不存在或已被替代)用于进行性能基准测试,以评估 MongoDB 的性能表现。
mongoreplay:#该工具用于重放从 MongoDB 的 oplog 中捕获的操作日志,以模拟生产环境的负载或进行故障排查。主要的是这俩
mongoperf: #该工具(在某些版本中可能不存在或已被替代)用于进行性能基准测试,以评估 MongoDB 的性能表现。
mongoreplay:#该工具用于重放从 MongoDB 的 oplog 中捕获的操作日志,以模拟生产环境的负载或进行故障排查。[root@mongod-1 ~]# mongostat
insert query update delete getmore command dirty used flushes vsize res qrw arw net_in net_out conn time
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:03.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:04.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:05.352
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:06.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:07.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:08.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:09.352
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:10.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:11.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:12.353
insert query update delete getmore command dirty used flushes vsize res qrw arw net_in net_out conn time
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:13.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:14.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:15.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:16.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:17.353insert: 每秒插入操作的次数。在这个例子中,*0 表示在采样期间没有插入操作。* 通常表示该值被抑制了,但在这里可能是格式化或显示的问题;通常应该是一个具体的数字或点(.)表示非零但非常小的值。
query: 每秒查询操作的次数。同样地,*0 表示没有查询操作。
update: 每秒更新操作的次数。*0 表示没有更新操作。
delete: 每秒删除操作的次数。*0 表示没有删除操作。
getmore: 每秒执行 getMore 命令的次数,这通常用于从游标中获取更多的文档。0 表示没有执行 getMore 命令。
command: 每秒执行的数据库命令数(不包括插入、查询、更新和删除)。2|0 表示在这个采样期间执行了 2 个命令,| 后面的 0 可能是显示格式的一部分,通常这里不会显示 |。
dirty: 数据库脏数据所占的百分比。脏数据是指已经被修改但还没有被写入磁盘的数据。0.0% 表示没有脏数据。
used: MongoDB 服务器使用的内存百分比。0.0% 表示几乎没有使用内存(这可能不准确,因为 MongoDB 通常会使用一些内存)。
flushes: 每秒执行的数据刷新次数到磁盘。0 表示在这个采样期间没有执行数据刷新。
vsize: 虚拟内存使用量,这里是 915M,表示 MongoDB 进程使用的虚拟内存量。
res: 实际物理内存使用量,这里是 47.0M,表示 MongoDB 进程实际占用的物理内存量。
qrw: 读写队列的长度。0|0 表示没有等待的读写操作。
arw: 活跃读写操作的数量。1|0 表示有一个活跃的读操作,没有活跃的写操作。
net_in: 每秒从网络接收的数据量。这里是 158b,表示接收了非常少量的数据。
net_out: 每秒发送到网络的数据量。这里是 47.0k,表示发送了 47 KB 的数据。
conn: 当前连接到数据库的客户端数量。这里是 1,表示有一个客户端连接。
time: 输出这行数据时的时间戳。工具介绍
1.1
[root@mongod-1 ~]# cd /data/mongodb/bin/
[root@mongod-1 bin]# ll
total 249248
-rwxr-xr-x 1 root root 6153912 Mar 13 2019 bsondump
-rwxr-xr-x 1 root root 29513856 Mar 13 2019 mongo
-rwxr-xr-x 1 root root 54167960 Mar 13 2019 mongod
-rwxr-xr-x 1 root root 9033384 Mar 13 2019 mongodump
-rwxr-xr-x 1 root root 8546776 Mar 13 2019 mongoexport
-rwxr-xr-x 1 root root 8393736 Mar 13 2019 mongofiles
-rwxr-xr-x 1 root root 8696616 Mar 13 2019 mongoimport
-rwxr-xr-x 1 root root 8107936 Mar 13 2019 mongooplog
-rwxr-xr-x 1 root root 53544104 Mar 13 2019 mongoperf
-rwxr-xr-x 1 root root 12027552 Mar 13 2019 mongoreplay
-rwxr-xr-x 1 root root 9164264 Mar 13 2019 mongorestore
-rwxr-xr-x 1 root root 30804936 Mar 13 2019 mongos
-rwxr-xr-x 1 root root 8713128 Mar 13 2019 mongostat
-rwxr-xr-x 1 root root 8329816 Mar 13 2019 mongotop
[root@mongod-1 bin]#mongod: #MongoDB 的守护进程(daemon),用于启动 MongoDB 数据库服务器。它是 MongoDB 的核心服务,负责处理客户端的请求、数据的存储与检索等。
mongo: #MongoDB 的命令行界面(CLI),用于与 MongoDB 服务器进行交互。通过它,您可以执行数据库命令、查询数据、管理数据库和用户等。
mongodump: #用于导出 MongoDB 数据库中的数据。它可以将整个数据库或指定的集合导出为 BSON 格式的文件,这些文件之后可以使用 mongorestore 工具还原。
mongorestore: # 与 mongodump 相反,该工具用于还原之前使用 mongodump 导出的数据。它可以将 BSON 格式的文件还原到 MongoDB 数据库中。
mongoexport: #用于将数据从 MongoDB 导出为 JSON 或 CSV 格式的文件。与 mongodump 不同,mongoexport 导出的是人类可读的格式,便于在其他系统或应用程序中使用。
mongoimport: #用于将 JSON、CSV 或 TSV 格式的文件导入到 MongoDB 数据库中。它允许您将数据从其他系统或应用程序迁移到 MongoDB。
bsondump: #用于将 BSON 格式的文件转储为人类可读的 JSON 格式。这对于分析和调试 BSON 文件非常有用。
mongofiles: #该工具允许您通过 MongoDB 的 GridFS 存储和检索文件。GridFS 是 MongoDB 提供的用于存储和检索大文件的文件系统规范。
mongooplog: #该用于访问 MongoDB 的操作日志(oplog)。oplog 是 MongoDB 复制和故障恢复的重要组件,记录了数据库的所有变更操作。
mongostat: #该工具用于实时监控 MongoDB 的性能状态。它可以显示数据库的连接数、操作数、内存使用情况等关键指标。
mongotop: #该工具用于跟踪 MongoDB 中各个集合的读写操作。它可以帮助您识别哪些集合正在消耗最多的资源。
mongoperf: #该工具(在某些版本中可能不存在或已被替代)用于进行性能基准测试,以评估 MongoDB 的性能表现。
mongoreplay:#该工具用于重放从 MongoDB 的 oplog 中捕获的操作日志,以模拟生产环境的负载或进行故障排查。主要的是这俩
mongoperf: #该工具(在某些版本中可能不存在或已被替代)用于进行性能基准测试,以评估 MongoDB 的性能表现。
mongoreplay:#该工具用于重放从 MongoDB 的 oplog 中捕获的操作日志,以模拟生产环境的负载或进行故障排查。[root@mongod-1 ~]# mongostat
insert query update delete getmore command dirty used flushes vsize res qrw arw net_in net_out conn time
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:03.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:04.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:05.352
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:06.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:07.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:08.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:09.352
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:10.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:11.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:12.353
insert query update delete getmore command dirty used flushes vsize res qrw arw net_in net_out conn time
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:13.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:14.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:15.353
*0 *0 *0 *0 0 2|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 158b 47.0k 1 Nov 26 17:01:16.353
*0 *0 *0 *0 0 1|0 0.0% 0.0% 0 915M 47.0M 0|0 1|0 157b 47.0k 1 Nov 26 17:01:17.353insert:
#每秒插入操作的次数。在这个例子中,*0 表示在采样期间没有插入操作。* 通常表示该值被抑制了,但在这里可能是格式化或显示的问题;通常应该是一个具体的数字或点(.)表示非零但非常小的值。
query:
#每秒查询操作的次数。同样地,*0 表示没有查询操作。
update:
#每秒更新操作的次数。*0 表示没有更新操作。
delete:
#每秒删除操作的次数。*0 表示没有删除操作。
getmore:
#每秒执行
#getMore 命令的次数,这通常用于从游标中获取更多的文档。0 表示没有执行 getMore 命令。
command:
#每秒执行的数据库命令数(不包括插入、查询、更新和删除)。2|0 表示在这个采样期间执行了 2 个命令,| 后面的 0 可能是显示格式的一部分,通常这里不会显示 |。
dirty:
#数据库脏数据所占的百分比。脏数据是指已经被修改但还没有被写入磁盘的数据。0.0% 表示没有脏数据。
used:
#MongoDB 服务器使用的内存百分比。0.0% 表示几乎没有使用内存(这可能不准确,因为 MongoDB 通常会使用一些内存)。
flushes:
#每秒执行的数据刷新次数到磁盘。0 表示在这个采样期间没有执行数据刷新。
vsize:
#虚拟内存使用量,这里是 915M,表示 MongoDB 进程使用的虚拟内存量。
res:
#实际物理内存使用量,这里是 47.0M,表示 MongoDB 进程实际占用的物理内存量。
qrw:
#读写队列的长度。0|0 表示没有等待的读写操作。
arw:
#活跃读写操作的数量。1|0 表示有一个活跃的读操作,没有活跃的写操作。
net_in:
#每秒从网络接收的数据量。这里是 158b,表示接收了非常少量的数据。
net_out:
#每秒发送到网络的数据量。这里是 47.0k,表示发送了 47 KB 的数据。
conn:
#当前连接到数据库的客户端数量。这里是 1,表示有一个客户端连接。
time:
#输出这行数据时的时间戳。
















