mongodb的基本性能统计工具简单记录 1.mongostat 查看某组运行中的mongodb实例的统计信息; [root@mongodb ~]# /apps/mongo/bin/mongostat connected to: 127.0.0.1 insert query update delete getmore command flushes mapped vsize res faults locked % id
mongodb的基本性能统计工具简单记录
1.mongostat
查看某组运行中的mongodb实例的统计信息;
[root@mongodb ~]# /apps/mongo/bin/mongostat
connected to: 127.0.0.1
insert query update delete getmore command flushes mapped vsize res faults locked % idx miss % qr|qw ar|aw netin netout conn time
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:41
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:42
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:43
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:44
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:45
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:46
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:47
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:48
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:49
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:50
insert query update delete getmore command flushes mapped vsize res faults locked % idx miss % qr|qw ar|aw netin netout conn time
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:51
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:52
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:53
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:54
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:55
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:56
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:57
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:58
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:11:59
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:00
insert query update delete getmore command flushes mapped vsize res faults locked % idx miss % qr|qw ar|aw netin netout conn time
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:01
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:02
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:03
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:04
0 1 0 0 0 2 0 32m 126m 21m 0 0 0 0|0 0|0 187b 1k 2 00:12:05
0 1 0 0 0 2 0 32m 126m 21m 0 0 0 0|0 0|0 187b 1k 2 00:12:06
0 2 0 0 0 3 0 32m 126m 21m 0 0 0 0|0 0|0 312b 1k 2 00:12:07
0 2 0 0 0 3 0 32m 126m 21m 0 0 0 0|0 0|0 312b 1k 2 00:12:08
0 2 0 0 0 3 0 32m 126m 21m 0 0 0 0|0 0|0 312b 1k 2 00:12:09
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:10
insert query update delete getmore command flushes mapped vsize res faults locked % idx miss % qr|qw ar|aw netin netout conn time
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:11
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:12
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:13
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:14
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:15
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:16
0 0 0 0 0 1 0 32m 126m 21m 0 0 0 0|0 0|0 62b 1k 2 00:12:17
[root@mongodb ~]#
2.db.serverstatus
这个命令是最常用也是最基础的查看实例运行状态的命令之一;
> db.serverstatus()
{
host : mongodb,
version : 1.8.1,
process : mongod,
uptime : 23835,
uptimeestimate : 19085,
localtime : isodate(2013-06-04t16:13:54.759z),
globallock : {
totaltime : 23835266950,
locktime : 1406729,
ratio : 0.000059018806164451204,
currentqueue : {
total : 0,
readers : 0,
writers : 0
},
activeclients : {
total : 0,
readers : 0,
writers : 0
}
},
mem : {
bits : 32,
resident : 21,
virtual : 126,
supported : true,
mapped : 32
},
connections : {
current : 1,
available : 818
},
extra_info : {
note : fields vary by platform,
heap_usage_bytes : 291432,
page_faults : 88
},
indexcounters : {
btree : {
accesses : 1,
hits : 1,
misses : 0,
resets : 0,
missratio : 0
}
},
backgroundflushing : {
flushes : 397,
total_ms : 75,
average_ms : 0.1889168765743073,
last_ms : 0,
last_finished : isodate(2013-06-04t16:13:40.114z)
},
cursors : {
totalopen : 13,
clientcursors_size : 13,
timedout : 5
},
network : {
bytesin : 13775,
bytesout : 61049,
numrequests : 203
},
opcounters : {
insert : 21,
query : 55,
update : 1,
delete : 0,
getmore : 0,
command : 127
},
asserts : {
regular : 0,
warning : 0,
msg : 0,
user : 1,
rollovers : 0
},
writebacksqueued : false,
ok : 1
}
>
3.db.stats()
db.stats 查看数据库状态信息;
> db.stats()
{
db : test,
collections : 4,
objects : 28,
avgobjsize : 43.142857142857146,
datasize : 1208,
storagesize : 10496,
numextents : 4,
indexes : 2,
indexsize : 16384,
filesize : 50331648,
ok : 1
}
>
4.mongosniff
此工具可以从底层监控到底有哪些命令发送给了mongodb去执行,从中就可以进行分析;
[root@mongodb ~]# /apps/mongo/bin/mongosniff --source net lo
sniffing... 27017
127.0.0.1:42168 -->> 127.0.0.1:27017 test.things 45 bytes id:8cee6609 2364433929
query: {} ntoreturn: 3 ntoskip: 2
127.0.0.1:27017
reply n:3 cursorid: 2553044974605072461
{ _id: objectid('51adf11685702b41681359ae'), x: 4.0, j: 1.0 }
127.0.0.1:42168 -->> 127.0.0.1:27017 admin.$cmd 80 bytes id:8cee660a 2364433930
query: { replsetgetstatus: 1, forshell: 1 } ntoreturn: 1 ntoskip: 0
127.0.0.1:27017
reply n:1 cursorid: 0
{ errmsg: not running with --replset, ok: 0.0 }
^[[a127.0.0.1:42168 -->> 127.0.0.1:27017 test.things 45 bytes id:8cee660b 2364433931
query: {} ntoreturn: 3 ntoskip: 2
127.0.0.1:27017
reply n:3 cursorid: 6216195059213048439
{ _id: objectid('51adf11685702b41681359ae'), x: 4.0, j: 1.0 }
127.0.0.1:42168 -->> 127.0.0.1:27017 admin.$cmd 80 bytes id:8cee660c 2364433932
query: { replsetgetstatus: 1, forshell: 1 } ntoreturn: 1 ntoskip: 0
127.0.0.1:27017
reply n:1 cursorid: 0
{ errmsg: not running with --replset, ok: 0.0 }
^[[?1;2c127.0.0.1:42168 -->> 127.0.0.1:27017 test.$cmd 82 bytes id:8cee660d 2364433933
query: { count: c1, query: {}, fields: {} } ntoreturn: -1 ntoskip: 0
127.0.0.1:27017
reply n:1 cursorid: 0
{ n: 1.0, ok: 1.0 }
