零停机 Postgres 版本升级方案
PostgreSQL 通过逻辑复制实现零停机的主版本升级。
在升级前,旧集群持续发布变更,新的集群订阅这些变更,保持同步。
升级完成后,只需短暂的写入停顿(约 181 ms)完成切换,业务几乎不受影响。
关键步骤
1. 准备:保持旧集群在线,开启逻辑复制,确保 DDL 在切换窗口之外完成。
2. 切换:在 pgbouncer 后端完成切换,旧集群保持可回滚。
3. 回滚:若升级失败,可在毫秒级别内通过逆向订阅回滚到旧版本。
此方案兼容 PostgreSQL 10‑19,支持多版本并行运行,适用于需要高可用、低 RTO 的生产环境。
Post #1944
1