PostgreSQL 18 中文参考文档(未翻译部分保留英文)🌐 切换到英文原版 →

Chapter 24. 日常数据库维护任务

Table of Contents

24.1. 例行清理
24.1.1. 清理基础
24.1.2. 回收磁盘空间
24.1.3. 更新统计信息
24.1.4. 更新可见性位图
24.1.5. 防范事务 ID 回卷故障
24.1.6. 自动清理守护进程
24.2. 例行重建索引
24.3. 日志文件维护

正如任何大型工业级数据库软件一样,PostgreSQL 需要定期执行若干例行维护操作以维持长期的最佳运行性能。本章介绍的维护任务属于系统保持健康所强制必需的工作,但它们在本质上属于高度周期性的重复任务,完全可以通过操作系统的标准定时调度工具(如 Linux 的 cron 脚本或 Windows 的任务计划程序)实现全自动化无人值守运维。数据库管理员的职责是合理配置各参数阈值并监控这些任务的成功执行。

首要且最显而易见的维护任务是定期构建数据备份副本。没有可靠的近期备份,在遭遇灾难性事故(如硬件物理损坏、火灾断电、甚至误删核心数据表)时将毫无恢复希望。详见 Chapter 25。

第二大类核心维护工作是对数据库执行周期性的“清理”(Vacuuming),详见 Section 24.1。与此紧密联动的是由优化器依赖的统计信息的自动刷新(参见 Section 24.1.3)。此外还包括日志文件的滚动清理管理(参见 Section 24.3)。