MongoDB进程查看方法

前端之家收集整理的这篇文章主要介绍了MongoDB进程查看方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

(1)查看MongoDB的连接信息

@H_502_6@db.serverStatus().connections

结果如下:

@H_502_6@{ "current" : 233,"available" : 50967191495) }

各个关键词的含义:

current:当前连接数
available:可用连接数
TotalCreated:累计创建线程数

 

(2)使用db.currentOP()方法查看进程信息

(2.1)使用db.currentOP()查看活跃进程操作

@H_502_6@db.currentOP()

 

结果如下:

@H_502_6@{ "inprog" : [ { "opid" : 555344731,"active" : true,"secs_running" : 4,"microsecs_running" : NumberLong(4245011),"op" : "getmore","ns" : "local.oplog.$main","query" : { "ts" : { "$gte" : Timestamp(1587629847,1) } },"client" : "10.1.70.58:39730","desc" : "conn138331","threadId" : "0x7e9b25584700","connectionId" : 138331,"waitingForLock" : false,"numYields" : 0,"lockStats" : { "timeLockedMicros" : { "r" : NumberLong(364),"w" : NumberLong(0) },"timeAcquiringMicros" : { "r" : NumberLong(16),"w" : NumberLong(0) } } } ] }

 各个关键词的含义:

opid:进程号
active:是否活跃状态
secs_running:操作运行秒数
microsecs_running:操作运行微秒数
op:操作类型,包括(insert/update/query/remove/getmore/command)
ns:命名空间
query:查询语句
client:连接的客户端信息
desc:描述信息
threadId:线程id
connectionId:连接id
waitingForLock:是否等待获取
lockStats.timeLockedMicros.r:持有读锁的时间(微秒)
lockStats.timeLockedMicros.w:持有写锁的时间(微秒)
lockStats.timeAcquiringMicros.r:请求读锁的时间(微秒)
lockStats.timeAcquiringMicros.2:请求写锁的时间(微秒)

 

(2.2)使用db.currentOP(<operations>)查看所有进程
可以使用 db.currentOP(<operations>) 查看所有进程,operations取值如下:

参数  类型 描述
operations  boolean or document

-- 定义为true,结果包含空闲的连接和系统后台进程

-- 定义为document with query conditions ,结果返回符合条件的操作

(2.2.1)定义为布尔值true,返回全部连接

@H_502_6@// 定义为true,返回全部连接,包含active、idle、system db.currentOP({"$all":true}) db.currentOp(true)

 


(2.2.2)定义为文档,返回符合条件的连接
例子1:查看等待获取锁的会话

@H_502_6@db.currentOP({waitingForLock" : true})

 


例子2:查看db1数据库执行时间超过3秒的活动进程

@H_502_6@db.currentOP( { activesecs_running":{$gt":3},1)">ns":/^db1\./ } )

 

 

(3)MongoDB杀死正在执行的进程

@H_502_6@db.killOp(opid);

 

【完】

原文链接:https://www.f2er.com/mongodb/997633.html

猜你在找的MongoDB相关文章