Supabase Postgres 14 即将结束支持:自动升级前检查清单

Dev

这个期限已经是运维事项。Supabase 将在 2026 年 7 月 1 日结束 Postgres 14 支持。届时仍在 deprecated 版本上的项目会自动升级到可用的最新 Postgres;如果使用了不再支持的扩展,项目可能被暂停并停止处理流量。

01
确认版本
02
审计扩展
03
预演升级
04
规划停机
05
验证
在 7 月 1 日前将 Supabase 项目迁出 Postgres 14 的运维流程。

为什么现在要处理

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 更快,但仍然需要停机窗口和应用层验证。

SurfaceExampleWhy it matters
Version`select version();`Do not rely on memory or project age.
Extensionsplv8, timescaledb, pgjwt, pg_cronExtension compatibility decides whether automation is safe.
Rolescustom login rolesPasswords for custom roles may need manual handling.
Replicationlogical replication slotsSlots may need to be recreated after upgrade.
Validationauth, RLS, jobs, webhooksApplication 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 和支持路径。

小项目也许可以依赖自动升级。生产系统中,平台能执行基础设施流程,但只有你的团队知道哪些应用契约必须通过验证。

风险与反方观点

小项目也许可以依赖自动升级。生产系统中,平台能执行基础设施流程,但只有你的团队知道哪些应用契约必须通过验证。

来源