mongostat是mongodb自带的状态检测工具,在命令行下使用,会间隔固定时间(默认1s)获取mongodb的当前运行状态,并输出。它对你在mongodb优化方面有很大的帮助
传送门mongodb命令行使用
mongostat查看帮助
#进入mongdb的bin目录
>.mongodb --help //可以查看mongodb的所有的使用方法
启动参数说明
参数
说明
示例
-v
详细的日志输出,包括更多的信息,v的数量可以有多个
.mongostat -vvv --host 127.0.0.1:27017
-h
要监控的数据库的ip和端口,可以写成-h或者 --host
./mongostat -h 127.0.0.1:27017
-u
admin库的用户名,也可以写成 --username
略
-p
admin库的密码,也可以写成 --password
略
--authenticationDatabase
后面跟的是保存用户凭证的数据库,用户凭证在admin库中,所用这里填admin,这个参数是在有用户名和密码的时候才用的
./mongostat -h 127.0.0.1:27017 -u root -p 123456 --authenticationDatabase admin
--noheaders
不输出表头,就是没有最上面一行列的说明
./mongostat -h 127.0.0.1:27017 --noheaders
-n
要输出多少行,不指定默认一秒输出一行,指定以后,达到指定的行数以后就不在输出信息了,也可以写成--rowcount
./mongostat -h 127.0.0.1:27017 -n 20
--discover
监控所有节点并且显示
./mongostat -h 127.0.0.1:27017 --discover
--http
使用http链接,而不是原始的链接
./mongostat -h 127.0.0.1:27017 --discover --http
--all
所用可选的字段
略
--json
打印的数据是json格式
./mongostat -h 127.0.0.1:27017 --json
打印样例
打印信息参数说明
参数
说明
inserts/s
每秒插入次数
query/s
每秒查询次数
update/s
每秒更新次数
delete/s
每秒删除次数
getmore/s
每秒执行getmore次数,查看更多的意思,我们每次查询数据时,如果一次数据量比较大,超过了mongodb一次能查询的最大数据量,那么mongodb就回把这次要查询的数据分成几次查询,分别返回
command/s
每秒的命令数,比以上插入、查找、更新、删除的综合还多,还统计了别的命令
dirty
WiredTiger存储引擎中dirty 数据占缓存百分比
used
WiredTiger存储引擎中引擎使用缓存占百分比
flushes/s
每秒执行fsync将数据写入硬盘的次数, WiredTiger存储引擎中,flushes是指WiredTiger循环创建检查点的时间间隔。每隔一段时间,mongodb就将内存上的数据写入硬盘,如果这个数值比较大的话,会影响性能
vsize
虚拟内存使用量,单位MB
res
物理内存使用量,单位MB
faults /s
每秒访问失败数(只有Linux有),数据被交换出物理内存,放到swap。不要超过100,否则就是机器内存太小,造成频繁swap写入。此时要升级内存或者扩展
res
使用真实内存大小
qr
客户端等待读的长度,队列中的长度
qw
客户端等待写的队列长度
ar
活跃客户执行写操作的数量。
aw
活跃客户等待写的数量
netin
mongodb进入的流量包含mongostat本身(单位:bytes)
netout
mongodb出去的流量包含mongostat本身
conn
当前连接数
time
时间戳
待定
*****************************分割线*************************
repl
当前实例的角色
M或 PRI
"master",
SEC
"Secondary",
REC
"recovering",
UNK
"unknow",
SLV
"slave",
RTR
"mongos process"("router")
ARB
"arbiter"
参考文章
http://blog.csdn.net/cx136295988/article/details/73498651
http://blog.csdn.net/u011186019/article/details/70918288
【译】MongoDB的监控
mongo监控命令与工具
http://new.nginxs.net/read.php/post-201603071508/