概述
大版本升级若未经演练,停机时长与兼容性风险都只能靠猜。先在接近生产的数据上盘点扩展与行为差异并演练升级、验证备份可恢复并写明回退步骤与期限,再在窗口内切换并可回退,可把不可逆的操作变成可管理的变更。
关键步骤
- 盘点可能改变行为的扩展、驱动与特性。
- 在接近生产的副本上演练并测量停机。
- 验证备份可恢复,明确回滚步骤与期限。
- 在窗口内切换、验证,检查失败则回退。
验证
- 应用测试套件针对升级后的数据库通过。
- 复制保持健康。
- 恢复演练成功完成。
- 回退期限内旧版本仍可用。
决策点
大型数据库可用逻辑复制降低停机但增加切换步骤;旧版本至少应保留一个完整备份周期与稳定期。
适用范围
本条目围绕「数据库升级与回滚工作流」给出可复制的步骤、验证方式与常见问题,适合需要按此流程落地的工程团队。执行时请结合自身上下文调整命令与阈值,并在变更前后留存证据,便于后续复核与回滚。
pg_upgrade --old-datadir /var/lib/pg/15 --new-datadir /var/lib/pg/16 --link
# rehearsal first; keep pg 15 installed for the revert window