hangkk2008

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一  mongodb 提供了三种方式:

1. http监视器
2. db.serverStatus()
这个函数可以获取到mongodb的服务器统计信息,其中包括 :全局锁,索引,用户操作行为等等这些统计信息,对管理员来说非常重要.
具体的参数含义参考:http://www.cnblogs.com/xuegang/archive/2011/10/13/2210339.html

查看全局锁情况

testrs:PRIMARY> db.serverStatus().globalLock;
{
        "totalTime" : NumberLong("870946696000"),
        "currentQueue" : {
                "total" : 0,
                "readers" : 0,
                "writers" : 0
        },
        "activeClients" : {
                "total" : 20,
                "readers" : 0,
                "writers" : 0
        }
}

3. mongostat

/apps/svr/mongodb/bin/mongostat -u*** -p*** --host=127.0.0.1:27127 --authenticationDatabase=admin
insert query update delete getmore command % dirty % used flushes vsize   res qr|qw ar|aw netIn netOut conn     set repl                      time
    *0    *0      1     *0       2     4|0     0.1   80.0       0  112G 92.2G   0|0   0|0 2.69k  25.2k  463 27127_0  PRI 2020-11-06T09:28:02+08:00
    *0    *0      2     *0       2     5|0     0.1   80.0       0  112G 92.2G   0|0   0|0 2.85k  25.0k  463 27127_0  PRI 2020-11-06T09:28:03+08:00
    *0    *0      1     *0       0     3|0     0.1   80.0       0  112G 92.2G   0|0   0|0  723b  23.8k  463 27127_0  PRI 2020-11-06T09:28:04+08:00
    *0    *0      1     *0       0     1|0     0.1   80.0       0  112G 92.2G   0|0   0|0  503b  22.7k  463 27127_0  PRI 2020-11-06T09:28:05+08:00
    *0     3      6     *0       9    12|0     0.1   80.0       0  112G 92.2G   0|0   0|0 12.0k  32.6k  463 27127_0  PRI 2020-11-06T09:28:06+08:00
    *0    *0      3     *0       2     6|0     0.1   80.0       0  112G 92.2G   0|0   0|0 3.56k  25.4k  463 27127_0  PRI 2020-11-06T09:28:07+08:00

 

输出有以下几列:
    - inserts/s 每秒插入次数
    - query/s   每秒查询次数
    - update/s  每秒更新次数
    - delete/s  每秒删除次数
    - getmore/s 每秒执行getmore次数
    - command/s 每秒的命令数,比以上插入、查找、更新、删除的综合还多,还统计了别的命令
    - flushs/s  每秒执行fsync将数据写入硬盘的次数
    - vsize     占用的虚拟内存大小
    - res       实际使用的内存大小
    - qr|qw 客户端查询排队长度(读/写).当Mongodb接收到太多的命令而数据库被锁住无法执行完成,它会将命令加入队列.都为0的话表示mongo毫无压力。高并发时,一般队列值会升高。
    - ar|aw 活跃客户端排队长度(读/写)
- netIn 接收端网络速率,单位是bytes - netOut发送端网络速率,单位是bytes - conn 连接数(open connections) - set 复制集(replica set)名称 - repl 成员在复制集中的状态(PRI|SEC|ARB|REC) - time 时间戳

 4.mongotop  用来跟踪MongoDB的实例, 提供每个集合的统计数据

# /usr/local/mongodb/bin/mongotop --port 27091    
2019-04-21T16:49:33.650+0800    connected to: 127.0.0.1:27091

                    ns    total    read    write    2019-04-21T16:49:34+08:00
    admin.system.roles      0ms     0ms      0ms                             
  admin.system.version      0ms     0ms      0ms                             
              local.me      0ms     0ms      0ms                             
        local.oplog.rs      0ms     0ms      0ms                             
local.replset.election      0ms     0ms      0ms                             
local.replset.minvalid      0ms     0ms      0ms                             
     local.startup_log      0ms     0ms      0ms                             
  local.system.replset      0ms     0ms      0ms                             
        school.student      0ms     0ms      0ms         
输出字段说明:
ns:数据库命名空间,后者结合了数据库名称和集合
total:mongod在这个命令空间上花费的总时间
read:在这个命令空间上mongod执行读操作花费的时间
write:在这个命名空间上mongod进行写操作花费的时间

 

二 查看db情况

testrs:PRIMARY> db.stats()
{
        "db" : "school",
        "collections" : 1,
        "objects" : 20000,
        "avgObjSize" : 131.4447,
        "dataSize" : 2628894,
        "storageSize" : 815104,
        "numExtents" : 0,
        "indexes" : 3,
        "indexSize" : 626688,
        "ok" : 1
}
posted on 2019-04-21 16:37  鱼儿也疯狂  阅读(243)  评论(0)    收藏  举报