MongoDB进程查看方法
(1)查看MongoDB的连接信息
db.serverStatus().connections
结果如下:
{ "current" : 233, "available" : 50967, "totalCreated" : NumberLong(191495) }
各个关键词的含义:
current:当前连接数
available:可用连接数
TotalCreated:累计创建线程数
(2)使用db.currentOP()方法查看进程信息
(2.1)使用db.currentOP()查看活跃进程操作
db.currentOP()
结果如下:
{
"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,返回全部连接
// 定义为true,返回全部连接,包含active、idle、system db.currentOP({"$all":true}) //或 db.currentOp(true)
(2.2.2)定义为文档,返回符合条件的连接
例子1:查看等待获取锁的会话
db.currentOP({"waitingForLock" : true})
例子2:查看db1数据库执行时间超过3秒的活动进程
db.currentOP( { "active" : true, "secs_running":{"$gt":3}, "ns":/^db1\./ } )
(3)MongoDB杀死正在执行的进程
db.killOp(opid);
【完】
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?