欢迎光临
我们一直在努力

MongoDB Drop集合不释放磁盘空间的解决办法

C:\Users\duansf>mongo
MongoDB shell version: 2.6.6
connecting to: test

> use test
switched to db test
> show collections
articles
books
chenfeng
dsf
fs.chunks
fs.files
system.indexes
system.profile
test
users

> db.books.drop();
true
>
删除books这个collection,但是查看数据文件发现大小不变,MongoDB不会自动释放文件空间

db.repairDatabase() //执行这个命令后,Mongodb会把不需要的空间释放出来

> db.repairDatabase()
{ “ok” : 1 }
>
注意:repairDatabase期间会产生锁,建议关闭应用后再进行此操作

官方文档对这个命令的解释如下:

repairDatabase requires free disk space equal to the size of your current data set plus 2 gigabytes. If the volume that holds dbpath lacks sufficient space, 
you can mount a separate volume and use that for the repair. When mounting a separate volume for repairDatabase you must run repairDatabase from the command 
line and use the –repairpath switch to specify the folder in which to store temporary repair files.

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。