1、mongostat
MongoDB数据库管理系统是一种功能强大的面向文档的数据库,但在使用这种数据库时,我们必须对其进行监控。mongostat是MongoDB数据库监视工具的一种,可为我们提供各种有关MongoDB数据库系统活动的信息。下面进行mongostat的详细介绍。
1.1 mongostat的作用
mongostat允许我们实时监控MongoDB的运行情况,包括的信息有如下几个方面内容:
每秒钟读写锁的数量;
每秒钟执行的查询、插入和更新的数量;
已连接的客户端数;
数据大小,我们可以一次监控一个或多个MongoDB实例;
如果我们要监控一个复制集,则可以查看主server和从server的运行状态。
1.2 mongostat的使用方法
mongostat的使用非常简单,只需要在终端输入mongostat命令即可,如下所示:
mongostat
mongostat的默认选项是每秒钟显示一次当前MongoDB数据库的运行状况,以及提供更多的参数展示。
1.3 mongostat参数说明
下面详细介绍mongostat的参数:
-h:这个选项可以指定要连接的MongoDB实例,它的格式是hostName:port,如果有多个MongoDB实例,可以使用逗号将它们分开。
-n:在省略此选项时,mongostat将默认输出MongoDB实例每秒钟执行操作的次数。如果我们希望看到更多的汇总信息,则可以将此选项与数字n一起使用。例如:如果我们想要每30秒看到一次汇总数据,则可以使用-n 30.
-u:认证用户名
-p:认证用户的密码
--ssl:启用ssl进行连接
--sslCAFile:指定SSL CA证书的路径(为客户端认证服务器)
--sslPEMKeyFile:指定SSL PEM密钥文件路径(为服务器认证客户端)
--sslPEMKeyPassword:指定SSL PEM密钥密码
2、mongotop
mongotop是另一种MongoDB性能监视工具。它与mongodb的运行方式不同,不是以秒为单位分析数据库操作,而是分析数据库的数据表。只要有请求针对这个表进行执行,它就会被记录,每秒钟更新一次,并给出其时间和操作计数。
2.1 mongotop的作用
mongotop可以查询指定实例中的每个表,并在一定时间范围内显示有多少次查询读取该表的数据。
2.2 mongotop的使用方法
mongotop使用示例:
mongotop
在这种情况下,默认时间为30秒。
2.3 mongotop参数说明
mongotop的参数列表如下:
-h:这个选项可以指定要连接的MongoDB实例,它的格式是hostName:port,如果有多个MongoDB实例,可以使用逗号将它们分开。
-d:如果我们想要查看mongod相关的统计信息,则可以使用此选项。我们可以指定的命名空间来查看统计信息,命名空间的格式为db.test。
-n:在省略此选项时,mongotop将默认输出每秒钟读取表的数据次数。如果我们希望看到更多的汇总信息,则可以将此选项与数字n一起使用。例如:如果我们想要每30秒看到一次汇总数据,则可以使用-n 30。
--ssl:启用ssl进行连接
--sslCAFile:指定SSL CA证书的路径(为客户端认证服务器)
--sslPEMKeyFile:指定SSL PEM密钥文件路径(为服务器认证客户端)
--sslPEMKeyPassword:指定SSL PEM密钥密码
2.4 mongotop使用的案例
我们可以在命令提示行中输入mongotop,然后显示实时统计信息。
mongotop
输出结果将会显示实时统计信息,例如:
mongo 0ms test.dba 5
mongo 0ms test.dbb 8
mongo 0ms test.dbc 15
输出字段说明:
monog:locked数据库实例的名称,其中locked表示MongoDB的锁定百分比
0ms:指显示时间的间隔为0秒
test.dba:命名空间db.table
5:我们读取test.dba这张表数据的次数
3、结语
mongostat和mongotop是两个非常实用的MongoDB数据库监控工具。通过这两个工具我们可以更方便地了解MongoDB数据库实例的运行状态,并且可以及时发现并解决相关的问题。