1. 养乐多|杨城的个人博客首页
  2. 技术杂谈
  3. Data Analysis

MongoDB哪些操作会锁住数据库?

常用的数据库操作和它们使用锁的类型:

查询操作

读锁

从一个 cursor 中获得更多数据

读锁

插入数据

写锁

删除数据

写锁

更新数据

写锁

Map-reduce

读锁和写锁,除非被指定为非原子性操作。部分 map-reduce 的工作可以同时运行。

创建一个索引

在前台创建一个索引,这是默认的,会长时间的锁定数据库。

db.eval()

3.0 版后已移除.

写锁, db.eval() 方法在评估JavaScript函数的时候使用了一个全局写锁,你可以使用 eval 命令,带上 nolock: true

eval

3.0 版后已移除.

写锁。默认的, eval 命令在评估JavaScript函数的时候使用一个全局写锁。如果使用参数 nolock: trueeval 命令在评估JavaScript函数的时候不会使用全局写锁。然而,JavaScript函数可能为写操作接收一个写锁。

aggregate()

读锁

原创文章,作者:iConan,如若转载,请注明出处:https://www.aspyc.com/archives/305.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据