mongodb 维护

如何释放空间?

1. 先用 remove 命令删除数据

2. repair。需要停机,即便你不停机的话 mongodb 自己也会锁住直到 repair 完成。注意要有足够的磁盘空间,需要额外一倍的空间,如果mongodb 占用了100G,那么 repair 时还需要额外的100G 空间。可以追加磁盘,然后将目标目录指向新加的磁盘。

              mongod --dbpath /data/db --repair --repairpath /data/db0

    如果当前磁盘足够的话可直接在 mongo 命令行中运行:

              db.repairDatabase()

    只要磁盘空间够基本上没什么问题。

repair 的速度嘛,我33G整理到10G 用了5分钟。

经测试,释放出来的空间与用 copyDatabase 方法释放的空间一样。

原文地址:https://www.cnblogs.com/olivetree123/p/4733489.html