2026-06-16 | database · kernel | #postgresql #pg-kernel #vacuum #freezing #wraparound #autovacuum #visibility-map #free-space-map #index-only-scan #pgstattuple #bloat #pg-stat-progress-vacuum #transaction-id
拆解 PostgreSQL VACUUM 的完整内部流程:heap scan、dead tuple 回收、索引清理、FSM/VM 更新。深入可见性映射和空闲空间映射的结构设计,以及 Index-Only Scan 如何依赖 VM 判断页面全可见。解析 Freezing 机制与事务 ID 回卷防御,Autovacuum 的触发阈值和 cost-based delay。最后用一条从 n_tup_del 增长到数据库强制只读的完整危机时间线,讲清楚 Anti-wraparound VACUUM 的预警信号链、典型陷阱和排查方法。
2026-06-16 | database · kernel | #postgresql #pg-kernel #monitoring #observability #pg-stat-statements #pg-stat-activity #pg-locks #pg-stat-replication #autovacuum #prometheus #alerting #pgbadger #pgcenter
不从 Grafana 模板照抄,而是从 PG 内核机制推导出必须监控的六个维度:连接与 wait_event、存储膨胀与 XID wraparound、WAL 与复制延迟、查询性能突变、锁等待链、以及 shared_buffers 命中率骗局。每个维度配具体 SQL 和指标解读,告警阈值给出内核依据而非拍脑袋数字,同时盘点 pg_stat_statements queryid 冲突、track_io_timing 开销、pg_stat_activity 自身代价等监控工具本身的陷阱。