mongdb 并发与锁相关

本贴最后更新于 977 天前,其中的信息可能已经时过境迁

db.currentOp()

Mongodb 的命令一般很快就完成,但是在一台繁忙的机器或者有比较慢的命令时,你可以通过 db.currentOp()获取当前正在执行的操作。

在没有负载的机器上,该命令基本上都是返回空的

db.currentOp()

{ "inprog" : [ ] }

以下是一个有负载的机器上得到的返回值样例:

{ "opid" : "shard3:466404288", "active" : false, "waitingForLock" : false, "op" : "query", "ns" : "sd.usersEmails", "query" : { }, "client_s" : "10.121.13.8:34473", "desc" : "conn" },

字段名字都能自解释。如果你发现一个操作太长,把数据库卡死的话,可以用这个命令杀死他

db.killOp("shard3:466404288")

来自 [http://www.cnblogs.com/renyb/archive/2013/01/18/2866632.html](http://www.cnblogs.com/renyb/archive/2013/01/18/2866632.html)

官方:https://docs.mongodb.com/v3.2/faq/concurrency/

主要是 db.currentOp()看,然后 db.killOp("opid 的值")杀掉锁。

  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    82 引用 • 53 回帖 • 2 关注

广告 我要投放

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...