pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
PostgreSQL在某些情况下无法重用 B-tree 索引页。问题在于,如果被索引的行被删除,这些索引页只能被 具有相似值的行重用。例如,如果被索引的行被删除,而新插入/ 更新的行的值高得多,新行就无法使用被删除的行腾出的索引 空间。相反,这样的新行必须放在新的索引页上。在这种情况 下,即使频繁运行VACUUM,索引占用的磁盘空间也 会无限增长。
作为解决方案,可以周期性地使用REINDEX命令丢弃 被删除的行使用的页。还有contrib/reindexdb可以 重建整个数据库的索引。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。