压缩集合(compact)
MongoDB维护命令
db.runCommand({ compact: "customer" })作用
在磁盘上重写集合及其索引,回收空闲空间。
适用场景
大量删除/更新后希望回收磁盘空间时。
注意
在 4.4+ 中 compact 不阻塞读写;只阻塞同一集合上的某些 DDL 操作(drop、createIndex、dropIndex 等);它仍会产生大量 IO,且不一定把空间归还给操作系统。尽可能在 secondary 上、在维护窗口中运行。
db.runCommand({ compact: "customer" })在磁盘上重写集合及其索引,回收空闲空间。
大量删除/更新后希望回收磁盘空间时。
在 4.4+ 中 compact 不阻塞读写;只阻塞同一集合上的某些 DDL 操作(drop、createIndex、dropIndex 等);它仍会产生大量 IO,且不一定把空间归还给操作系统。尽可能在 secondary 上、在维护窗口中运行。