网站搜索

监控 MongoDB 性能的 6 个有用工具


我们最近展示了如何在 Ubuntu 18.04 中安装 MongoDB。成功部署数据库后,您需要在其运行时监视其性能。这是数据库管理中最重要的任务之一。

幸运的是,MongoDB 提供了各种方法来检索其性能和活动。在本文中,我们将了解用于报告有关正在运行的 MongoDB 实例状态的统计信息的监控实用程序和数据库命令。

1. 蒙戈斯塔

Mongostat 的功能与 vmstat 监控工具类似,可在所有主要的类 Unix 操作系统上使用,例如 Linux、FreeBSD、Solaris 以及 MacOS。 Mongostat 用于快速概览数据库的状态;它提供正在运行的 mongodmongos 实例的动态实时视图。它按类型检索数据库操作的计数,例如插入、查询、更新、删除等。

您可以如图所示运行 mongostat。请注意,如果您启用了身份验证,请将用户密码放在单引号中以避免出现错误,尤其是当其中包含特殊字符时。

mongostat -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"

有关更多 mongostat 使用选项,请键入以下命令。

mongostat --help 

2.蒙戈托普

Mongotop 还提供正在运行的 MongoDB 实例的动态实时视图。它跟踪 MongoDB 实例读取和写入数据所花费的时间。默认情况下,它每秒返回值。

mongotop -u "root" -p '=@!#@%$admin1'  --authenticationDatabase "admin"

有关更多 mongotop 使用选项,请键入以下命令。

mongotop --help 

3.服务器状态命令

首先,您需要运行以下命令登录 mongo shell。

mongo -u "root" -p '=@!#@%$admin1' --authenticationDatabase "admin"

然后运行 serverStatus 命令,该命令通过收集有关实例的统计信息来提供数据库状态的概述。

>db.runCommand( { serverStatus: 1 } )
OR
>db.serverStatus()

4.dbStats命令

dbStats 命令返回特定数据库的存储统计信息,例如使用的存储量、数据库中包含的数据量以及对象、集合和索引计数器。

>db.runCommand({ dbStats: 1 } )
OR
>db.stats()

5.collStats

collStats命令用于收集类似于dbStats在集合级别提供的统计信息,但它的输出包括集合中对象的计数、集合的大小、集合消耗的磁盘空间量以及有关其索引的信息。

>db.runCommand( { collStats : "aurthors", scale: 1024 } )

6.replSetGetStatus命令

replSetGetStatus 命令从处理该命令的服务器的角度输出副本集的状态。此命令必须按以下形式针对 admin 数据库运行。

>db.adminCommand( { replSetGetStatus : 1 } )

除了上述实用程序和数据库命令之外,您还可以直接或通过他们自己的插件使用受支持的第三方监控工具。其中包括 mtop、munin 和 nagios。

有关更多信息,请参阅:MongoDB 监控文档。

现在就是这样!在本文中,我们介绍了一些有用的监控实用程序和数据库命令,用于报告有关正在运行的 MongoDB 实例状态的统计信息。使用下面的反馈表提出任何问题或与我们分享您的想法。