← 所有标签

标签:扩展兼容

1 篇文章

PG 大版本不能原地升:用 pg_upgrade 把 12 升到 16,停机从小时级压到分钟级
数据库运维13 min read

PG 大版本不能原地升:用 pg_upgrade 把 12 升到 16,停机从小时级压到分钟级

PostgreSQL 的大版本(10→12→15→16)catalog 不兼容,没法像小版本那样 yum update 后直接起。早年大家靠 pg_dump 导出再导入,几百 G 的库停机大半天。pg_upgrade 走的是「复用旧数据文件」的路子,copy 模式原样搬、link 模式直接建硬链接,停机往往压到几分钟。但它不是傻瓜命令——扩展版本不对、locale 不一致、表空间映射错一点,升级就中途报错回退。