PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。
PostgreSQL在某些情况下无法重用 B-tree 索引页。问题在于,如果被索引的行被删除,这些索引页只能被具有相似值的行重用。例如,如果被索引的行被删除,而新插入/ 更新的行的值高得多,新行就无法使用被删除的行腾出的索引空间。相反,这样的新行必须放在新的索引页上。在这种情况下,即使频繁运行VACUUM,索引占用的磁盘空间也会无限增长。
VACUUM
作为解决方案,可以周期性地使用REINDEX命令丢弃被删除的行使用的页。还有contrib/reindexdb可以重建整个数据库的索引。
REINDEX
contrib/reindexdb
阅读 上游文档. 反馈更正前请先核对 当前版本手册.