我们最近展示了如何在Ubuntu 18.04中安装MongoDB 。 成功部署数据库后,需要在运行时监视其性能。 这是数据库管理中最重要的任务之一。
幸运的是, MongoDB提供了各种方法来检索其性能和活动。 在本文中,我们将介绍监视实用程序和数据库命令,以报告有关正在运行的MongoDB实例的状态的统计信息。
蒙古包
Mongostat的功能与vmstat监视工具类似,后者可用于所有类似Unix的操作系统,如Linux,FreeBSD,Solaris以及MacOS。 Mongostat用于快速概述数据库的状态; 它提供了正在运行的mongod或mongos实例的动态实时视图。 它按类型检索数据库操作的计数,例如插入,查询,更新,删除等。
你可以运行mongostat ,如图所示。 请注意,如果启用了身份验证,请将用户密码放在单引号中以避免出错,尤其是如果您有特殊字符。
$ mongostat -u "root" -p '[email protected]!#@%$admin1' --authenticationDatabase "admin"
监控MongoDB性能
有关更多mongostat使用选项,请键入以下命令。
$ mongostat --help
2. Mongotop
Mongotop还提供正在运行的MongoDB实例的动态实时视图。 它跟踪MongoDB实例读取和写入数据所花费的时间。 默认情况下,它每秒返回一次值。
$ mongotop -u "root" -p '[email protected]!#@%$admin1' --authenticationDatabase "admin"
监控MongoDB活动
有关更多mongotop使用选项,请键入以下命令。
$ mongotop --help
3. serverStatus命令
首先,您需要运行以下命令登录mongo shell。
$ mongo -u "root" -p '[email protected]!#@%$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实例的状态的统计信息。 使用下面的反馈表来询问任何问题或与我们分享您的想法。