开发者社区> 问答> 正文

mongodb compact操作

已解决

mongdb中由于删除了大量的数据,但是没有释放磁盘空间给系统,想通过compact命令来释放磁盘空间;但是对compact命令有几个疑问
1,compact命令在WiredTiger引擎上是库级别锁还是collection级别锁?
2,执行compact命令需要多大的空余磁盘空间呢?

展开
收起
chuangqitech 2017-08-03 10:56:10 4304 0
1 条回答
写回答
取消 提交回答
  • 阿里云高级技术专家
    采纳回答
    1. compact 加的是DB级别的互斥写锁,同一个DB上的读写都会被阻塞
    2. compact基本不需要额外的空间,wiredtiger compact的原理是将数据不断往前面的空洞挪动,并不需要把数据存储到临时的位置(额外的存储空间)。
    2019-07-17 21:27:38
    赞同 1 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
开源数据库 MongoDB 专场 MongoDB疑难杂症分析及优化 立即下载
阿里云MongoDB云服务构建 立即下载
饿了么高级架构师陈东明:MongoDB是如何逐步提高可靠性的 立即下载