一.命令介绍
mongod #启动命令
mongo #登录命令
mongodump #备份导出,全备压缩
mongorestore #恢复
mongoexport #备份,数据可读json
mongoimport #恢复
mongostat #查看mongo运行状态
mongotop #查看mongo运行状态
mongos #集群分片命令
二.mongdb排查工具详解
#mongostat
[root@mongodb01 ~]# mongostat --port 28019
insert query update delete getmore command dirty used flushes vsize res qrw arw net_in net_out conn set repl time
*0 *0 *0 *0 2 6|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 4.70k 71.5k 23 dba PRI Dec 26 21:54:43.689
*0 *0 *0 *0 0 4|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 678b 69.0k 23 dba PRI Dec 26 21:54:44.688
*0 *0 *0 *0 0 4|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 576b 69.1k 23 dba PRI Dec 26 21:54:45.687
*0 *0 *0 *0 0 4|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 679b 69.1k 23 dba PRI Dec 26 21:54:46.685
*0 *0 *0 *0 0 3|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 574b 68.8k 23 dba PRI Dec 26 21:54:47.688
*0 *0 *0 *0 5 9|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 8.93k 74.7k 23 dba PRI Dec 26 21:54:48.693
*0 *0 *0 *0 0 4|0 0.2% 0.3% 0 1.51G 61.0M 0|0 1|0 582b 69.8k 23 dba PRI Dec 26 21:54:49.682
insert/s : 官方解释是每秒插入数据库的对象数量,如果是slave,则数值前有*,则表示复制集操作
query/s : 每秒的查询操作次数
update/s : 每秒的更新操作次数
delete/s : 每秒的删除操作次数
getmore/s: 每秒查询cursor(游标)时的getmore操作数
command: 每秒执行的命令数,在主从系统中会显示两个值(例如 3|0),分表代表 本地|复制 命令
注: 一秒内执行的命令数比如批量插入,只认为是一条命令(所以意义应该不大)
dirty: 仅仅针对WiredTiger引擎,官网解释是脏数据字节的缓存百分比
used:仅仅针对WiredTiger引擎,官网解释是正在使用中的缓存百分比
flushes:
For WiredTiger引擎:指checkpoint的触发次数在一个轮询间隔期间
For MMAPv1 引擎:每秒执行fsync将数据写入硬盘的次数
注:一般都是0,间断性会是1, 通过计算两个1之间的间隔时间,可以大致了解多长时间flush一次。flush开销是很大的,如果频繁的flush,可能就要找找原因了
vsize: 虚拟内存使用量,单位MB (这是 在mongostat 最后一次调用的总数据)
res: 物理内存使用量,单位MB (这是 在mongostat 最后一次调用的总数据)
注:这个和你用top看到的一样, vsize一般不会有大的变动, res会慢慢的上升,如果res经常突然下降,去查查是否有别的程序狂吃内存。
qr: 客户端等待从MongoDB实例读数据的队列长度
qw:客户端等待从MongoDB实例写入数据的队列长度
ar: 执行读操作的活跃客户端数量
aw: 执行写操作的活客户端数量
注:如果这两个数值很大,那么就是DB被堵住了,DB的处理速度不及请求速度。看看是否有开销很大的慢查询。如果查询一切正常,确实是负载很大,就需要加机器了
netIn:MongoDB实例的网络进流量
netOut:MongoDB实例的网络出流量
注:此两项字段表名网络带宽压力,一般情况下,不会成为瓶颈
conn: 打开连接的总数,是qr,qw,ar,aw的总和
注:MongoDB为每一个连接创建一个线程,线程的创建与释放也会有开销,所以尽量要适当配置连接数的启动参数,maxIncomingConnections,阿里工程师建议在5000以下,基本满足多数场景
#mongotop
[root@mongodb01 ~]# mongotop --port 28019
2019-12-26T21:55:25.133+0800 connected to: 127.0.0.1:28019
ns total read write 2019-12-26T21:55:26+08:00
local.oplog.rs 1ms 1ms 0ms
admin.system.keys 0ms 0ms 0ms
admin.system.roles 0ms 0ms 0ms
admin.system.version 0ms 0ms 0ms
backup.backup 0ms 0ms 0ms
backup.oplog.rs 0ms 0ms 0ms
config.system.sessions 0ms 0ms 0ms
config.transactions 0ms 0ms 0ms
local.replset.election 0ms 0ms 0ms
local.replset.minvalid 0ms 0ms 0ms
网友评论