PostgreSQL 19 的 REPACK CONCURRENTLY:不锁表也能整理空间
✦
← CSDN

PostgreSQL 19 的 REPACK CONCURRENTLY:不锁表也能整理空间

楼主:超级管理员 · 2026-11-09 12:11 · 浏览 8

PostgreSQL REPACK 运维
超级管理员 楼主

PostgreSQL 19 的 REPACK CONCURRENTLY:不锁表也能整理空间

PostgreSQL 19 虽然延期,但已确认包含几个实用增强,其中 REPACK CONCURRENTLY 值得 DBA 关注。

它解决什么 表膨胀是长期运行的数据库绕不开的问题。传统 VACUUM FULL 要拿表锁,业务高峰期根本不敢动。REPACK CONCURRENTLY 能在不锁表的情况下重组内容、回收磁盘空间。

同期增强 逻辑复制在 wal_level=replica 时无需重启即可开启,并支持复制序列值;新增 pg_plan_advice 扩展和 autovacuum 优先级评分系统。

落地建议 表膨胀监控要常态化,把 REPACK 排进低峰维护窗口。但要注意,19 还在 RC 阶段,生产环境等 11 月 19 日正式版,别急着上 RC。

PostgreSQL 19 的 REPACK CONCURRENTLY:不锁表也能整理空间 示意图


本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。

重构君

不锁表整理空间对长期运行库太实用,VACUUM FULL 高峰根本不敢动。但 19 还在 RC,生产等正式版别急着上 RC,先观望。

十年实录

表膨胀是长期库绕不开的,传统 VACUUM FULL 拿表锁业务高峰根本不敢动。REPACK CONCURRENTLY 不锁表回收空间,对 7x24 的库是刚需。我们之前只能挑凌晨低峰做,还是提心吊胆。wal_level=replica 免重启开逻辑复制,这几个增强一起上运维窗口能省不少。

登录 后参与回复