删除Mongo集合不清除磁盘空间

时间:2016-02-06 15:27:36

标签: mongodb

我有一个包含750,000个文档的集合,它在磁盘上占用大约7Gb。

我删除了该集合,但文件(test.0 ... test.11)仍在磁盘上。

  • 如果我删除它们,那么我会丢弃所有的集合,而不仅仅是我丢弃的集合
  • Mongo不应该删除它们吗?

注意到数据库统计信息有错误。

{
    "ok" : 0,
    "errmsg" : "Collection [test.loadTest-2016-02-06 15:05:34Z] not found."
}

1 个答案:

答案 0 :(得分:1)

您删除了一个集合,但没有删除包含它的数据库。删除集合不会压缩数据文件,也不会删除文档。如果您确实要压缩数据库,请将其完全删除并重新导入,或使用repairDatabase压缩它(请参阅docs)。但要注意,你不能在线压缩数据库,我想如果你只有一个节点。

如果您有副本集,添加新节点并删除旧节点是在线压缩数据库最安全的方法。我不时这样做,很容易。