首页 > 代码库 > MongoDB监控四 dbStats和collStats和replSetGetStatus

MongoDB监控四 dbStats和collStats和replSetGetStatus

  1. dbStats命令

    dbStats命令可以返回指定数据库的存储信息,默认是以bytes为单位显示存储信息,可以增加一个scale参数,如scale : 1024表示kilobytes显示。返回信息的时间由指定数据库的大小决定。

> db.runCommand({dbStats : 1,scale : 1})
{
	"db" : "test",
	"collections" : 28,
	"objects" : 161,
	"avgObjSize" : 61.391304347826086,
	"dataSize" : 9884,
	"storageSize" : 245760,
	"numExtents" : 29,
	"indexes" : 67,
	"indexSize" : 547792,
	"fileSize" : 201326592,
	"nsSizeMB" : 16,
	"dataFileVersion" : {
		"major" : 4,
		"minor" : 5
	},
	"ok" : 1
}
> db.runCommand({dbStats : 1,scale : 1024})
{
	"db" : "test",
	"collections" : 28,
	"objects" : 161,
	"avgObjSize" : 61.391304347826086,
	"dataSize" : 9,
	"storageSize" : 240,
	"numExtents" : 29,
	"indexes" : 67,
	"indexSize" : 534,
	"fileSize" : 196608,
	"nsSizeMB" : 16,
	"dataFileVersion" : {
		"major" : 4,
		"minor" : 5
	},
	"ok" : 1
}

   也可以使用db.stats()或者db.stats(1024)

> db.stats(1024)
{
	"db" : "test",
	"collections" : 28,
	"objects" : 161,
	"avgObjSize" : 61.391304347826086,
	"dataSize" : 9,
	"storageSize" : 240,
	"numExtents" : 29,
	"indexes" : 67,
	"indexSize" : 534,
	"fileSize" : 196608,
	"nsSizeMB" : 16,
	"dataFileVersion" : {
		"major" : 4,
		"minor" : 5
	},
	"ok" : 1
}

   db  当前数据库的名称,如果要查看指定数据库的存储信息,可以使用use test

   collections     当前数据库中包含的集合数量

   objects         数据库中所有集合包含的对象(例如文档)数量

   avgObjSize      每个文档的平均大小,用byte表示,这个值等于dataSize除以objects

   dataSzie        当前数据库持有的数据大小,包括padding factor, scale会影响这个值,当文档的大小缩小时,dataSzie不会减小,但是如果删除文档,dataSize的值会减小

   storageSize     分配给该数据库用于存储所有集合的文档的存储空间大小,以bytes计算,scale会影响这个值,当删除或缩小文档时,storageSize的值不会减小

   numExtents      数据库中所有集合包含的extent数量

   indexes         数据库中所有集合包含的索引数量

   indexSize       在这个数据库上创建的所有索引的大小,以bytes表示,scale会影响这个值

   fileSize        数据库的数据文件的大小,以bytes表示,这个值包括预分配空间和padding factor,这个值只能反映数据文件的大小,不能反映域名空间的大小

   

   

   

本文出自 “Linux SA John” 博客,请务必保留此出处http://john88wang.blog.51cto.com/2165294/1564543

MongoDB监控四 dbStats和collStats和replSetGetStatus