mongodb drop不释放磁盘空间

点击(此处)折叠或打开

  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

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。