mongodb drop不释放磁盘空间

本文介绍了MongoDB中数据删除及集合删除的操作方法,包括按条件删除文档、清空集合及删除集合等操作,并详细说明了如何通过db.repairDatabase()命令来释放磁盘空间。

点击(此处)折叠或打开

  1. use demodb //使用demodb,以下假设操作的collection是foo
  2. db.foo.remove({"id":"123456"}) //删除一条数据
  3. db.foo.remove() //删除foo中的所有记录,但是foo还存在,show collection还可以看到foo
  4. db.foo.drop() //删除foo这个collection,(show collection已经看不到foo了)但是查看数据文件发现大小不变,Mongodb不会自动释放文件空间
  5. db.repairDatabase() //执行这个命令后,Mongodb会把不需要的空间释放出来



db.repairDatabase()修复时一定要停掉读写,并且mongodb要有备机才可以,不然千万不要随便使用。
在修复过程中如果出现非正常的mongodb的挂掉,再次启动时启动不了,需要先修复,修复可能要花费很长的时间。
mongod --repair --dbpath=/var/lib/mongodb

 

http://blog.chinaunix.net/uid-9162199-id-4160205.html

转载于:https://www.cnblogs.com/seasonzone/p/4227393.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值