设为首页 加入收藏

TOP

MongoDB查看当前操作db.currentOp()
2015-11-21 01:33:40 来源: 作者: 【 】 浏览:0
Tags:MongoDB 查看 当前 操作 db.currentOp
定义
?
db.currentOp() ??
? ? 返回 数据库实例上正在运行的操作信息的文档。?
? ?
? ? db.currentOp()方法有如下格式: ? ?
? ? db.currentOp() ? ?
?
? ? db.currentOp()方法可使用如下可选参数: ? ?
? ? 参数 ? ? ? ? ? ?类型 ? ? ? ? ? ?描述 ? ?
? ? operations ? ?布尔值或文档 ? ?可选。指定报告的操作。可以输入布尔值或一个文档。 ? ?
? ? ? ? ? ? ? ? ? ? 指定true,包含空闲连接和 系统操作。 ? ?
? ? ? ? ? ? ? ? ? ? 指定带有查询条件的文档,只报告匹配条件的操作。
行为
如果传递true给db.currentOp(),该方法返回所有操作的信息,包括空闲连接和系统操作。 ?
?
db.currentOp(true) ?
??
传递true等于传递了一个查询文档{ '$all': true }。
?
如果传递一个查询文档给db.currentOp(),只返回匹配查询条件的当前操作。
?
你也可以指定{ '$all: true }查询文档返回所有正在运行的操作信息,包括空闲连接和系统操作。如果查询文档包括 '$all':true 以及其他查询条件,只会应用 '$all': true。
?
访问控制
?
在系统上运行用户授权验证,用户必须有访问inprog行为的权限。
?
示例
?
下面的示例使用带有不同查询文档的db.currentOp()方法过滤输出。
?
等待锁的写操作
?
下面的示例返回正在等待锁的所有写操作信息:
?
db.currentOp( ??
? ?{ ? ?
? ? ?"waitingForLock" : true, ? ?
? ? ?$or: [ ? ?
? ? ? ? { "op" : { "$in" : [ "insert", "update", "remove" ] } }, ? ?
? ? ? ? { "query.findandmodify": { $exists: true } } ? ?
? ? ] ? ?
? ?} ? ?
)
?
没有Yields的活动操作
?
下面的示例返回所有活动的正在运行的还没有Yields的操作的信息:
?
db.currentOp( ??
? ?{ ? ?
? ? ?"active" : true, ? ?
? ? ?"numYields" : 0, ? ?
? ? ?"waitingForLock" : false ? ?
? ?} ? ?
)
?
对于特定数据库的活动操作
?
下面的示例返回对于数据库db1运行时间大于3秒的所有活动操作:
?
db.currentOp( ??
? ?{ ? ?
? ? ?"active" : true, ? ?
? ? ?"secs_running" : { "$gt" : 3 }, ? ?
? ? ?"ns" : /^db1\./ ? ?
? ?} ? ?
)
?
活动索引操作
?
下面的示例返回索引创建操作的信息:
?
db.currentOp( ??
? ? { ? ?
? ? ? $or: [ ? ?
? ? ? ? { op: "query", "query.createIndexes": { $exists: true } }, ? ?
? ? ? ? { op: "insert", ns: /\.system\.indexes\b/ } ? ?
? ? ? ] ? ?
? ? } ? ?
)
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇查询树形的根节点 下一篇Cpp SQLite 3U使用小结

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: