Supabase Postgres 14 即将结束支持:自动升级前检查清单
这个期限已经是运维事项。Supabase 将在 2026 年 7 月 1 日结束 Postgres 14 支持。届时仍在 deprecated 版本上的项目会自动升级到可用的最新 Postgres;如果使用了不再支持的扩展,项目可能被暂停并停止处理流量。
为什么现在要处理
PostgreSQL 上游给出的 Postgres 14 EOL 是 2026 年 11 月 12 日,因此 Supabase 的平台期限更早。对托管平台来说这很合理,但产品团队需要现在检查真实依赖。
Official references to verify before acting: Supabase changelog, Supabase upgrade guide, and PostgreSQL 14 EOL notice.
发生了什么变化
Supabase 文档建议许多项目使用基于 `pg_upgrade` 的 in-place upgrade。它通常比 pause and restore 更快,但仍然需要停机窗口和应用层验证。
| Surface | Example | Why it matters |
|---|---|---|
| Version | `select version();` | Do not rely on memory or project age. |
| Extensions | plv8, timescaledb, pgjwt, pg_cron | Extension compatibility decides whether automation is safe. |
| Roles | custom login roles | Passwords for custom roles may need manual handling. |
| Replication | logical replication slots | Slots may need to be recreated after upgrade. |
| Validation | auth, RLS, jobs, webhooks | Application smoke tests catch what platform checks cannot. |
社区信号
社区讨论集中在扩展、`pg_cron`、自定义角色、replication slot 和外部集成。这些不是政策来源,但说明真实迁移中容易卡住的地方。
Community migration discussions are useful as narrative signals, but the operational policy should be checked against Supabase’s official changelog and docs.
对开发和运维的影响
先用 `select version();` 确认版本,再盘点扩展、角色、定时任务、逻辑复制和外部客户端。在 staging 或恢复副本上演练,准备 smoke test 和 rollback 条件。
现在该做什么
Upgrade readiness checklist
✓执行并保存 `select version();`。
✓审计扩展、`pg_cron`、角色和密码。
✓记录 replication slot 和外部客户端。
✓在 staging 或恢复副本中演练。
✓准备 auth、RLS、webhook、job、admin 的 smoke test。
✓确定停机窗口、rollback 和支持路径。
小项目也许可以依赖自动升级。生产系统中,平台能执行基础设施流程,但只有你的团队知道哪些应用契约必须通过验证。
风险与反方观点
小项目也许可以依赖自动升级。生产系统中,平台能执行基础设施流程,但只有你的团队知道哪些应用契约必须通过验证。