bashuse databasename
db.stats()
显示信息如下
> db.stats()
{ "collections" : 3, "objects" : 80614, "dataSize" : 21069700, "storageSize" : 39845376, "numExtents" : 9, "indexes" : 2, "indexSize" : 6012928, "ok" : 1}
环境配置:
bash[root@iZ2ze2pbbffhmn53ao4tuaZ bin]# cat /etc/redhat-release
bash[root@iZ2ze2pbbffhmn53ao4tuaZ bin]# uname -m
mongodb可以通过profile来监控数据,进行优化。
查看当前是否开启profile功能用命令:db.getProfilingLevel()返回level等级,值为0|1|2,分别代表意思:0代表关闭,1代表记录慢命令,2代表全部。
开始profile功能为db.setProfilingLevel(level);
level为1的时候,慢命令默认值为100ms,更改为db.setProfilingLevel(level,slowms)如db.setProfilingLevel(1,50)这样就更改为50毫秒 通过db.system.profile.find() 查看当前的监控日志。
mongodbdb.userInfo.aggregate([ { $group: { _id: {userName: '$userName',age: '$age'},count: {$sum: 1},dups: {$addToSet: '$_id'}} }, { $match: {count: {$gt: 1}} } ]).forEach(function(doc){ doc.dups.shift(); db.userInfo.remove({_id: {$in: doc.dups}}); })