选择 打开 改范围 完整检索页

PostgreSQL 18.6、17.11、16.15、15.19、14.24 与 19 Beta 3 发布!

发布于 2026-08-13,PostgreSQL Global Development Group
PostgreSQL 安全相关

PostgreSQL 全球开发组发布了所有受支持 PostgreSQL 版本的更新版本,包括 18.6、17.11、16.15、15.19、14.24,以及 PostgreSQL 19 的第三个 Beta 版本。本次发布修复了 28 个安全漏洞,以及过去数月报告的 110 多个缺陷。

请注意,本次发布跳过了 PostgreSQL 18.4 到 18.6 之间的部分版本;18.5 因回归问题没有发布。

本次更新中有三类问题在升级后可能需要额外处理:并行 GIN 索引构建、btree_gist,以及 ltree。完整变更列表请参阅 发布说明

PostgreSQL 14 停止维护提醒

PostgreSQL 14 将于 2026 年 11 月 12 日停止接收修复。如果你在生产环境中运行 PostgreSQL 14,建议尽快规划升级到更新的受支持版本。更多信息请参阅 版本策略

安全问题

本次更新修复了多项安全漏洞,详情请参阅 PostgreSQL 官方安全公告页面。涉及的漏洞包括 CVE-2026-6464、CVE-2026-6469、CVE-2026-6470、CVE-2026-6471、CVE-2026-14662、CVE-2026-14663、CVE-2026-14664、CVE-2026-14666、CVE-2026-14668、CVE-2026-14669、CVE-2026-14670、CVE-2026-14671、CVE-2026-14672、CVE-2026-14673、CVE-2026-14676、CVE-2026-14677、CVE-2026-14678、CVE-2026-14679、CVE-2026-14680、CVE-2026-14681、CVE-2026-15741、CVE-2026-15742、CVE-2026-16238、CVE-2026-16239、CVE-2026-16241、CVE-2026-18024、CVE-2026-18408 与 CVE-2026-19385。

缺陷修复与改进

本次更新修复了 110 多个缺陷。其中一个较严重的问题影响 PostgreSQL 14、15 和 16:修复了在重放旧小版本生成的 WAL 时可能出现的自死锁。该回归由上一组小版本引入,可能导致跟随旧小版本主库的备用服务器卡住。

PostgreSQL 18 及其他受支持版本还包含多项修复:并行 GIN 索引构建现在会正确更新 pg_class 中表的 reltuplesbtree_gist 修复了 NaNfloat4/float8bit/bit varying 等场景;ltree 修复了超长标签值比较中的整数溢出;分区裁剪、外表分区、RETURNING 中的 OLD/NEW、规划器、JSONPath、临时表访问、autovacuum 排序、VACUUM wraparound failsafe、索引仅扫描、可串行化冲突检测、可见性映射 WAL 记录、逻辑解码、libpqpg_createsubscriberpg_restore 等也包含修复。

本次发布还更新了时区数据到 tzdata 2026c。

升级

所有 PostgreSQL 更新版本都是累积的。与其他小版本一样,应用本次更新不需要 dump/reload 或 pg_upgrade;通常只需停止 PostgreSQL 并更新二进制文件。

如果你的表包含 GIN 索引,建议升级后检查 reltuples 是否合理。官方公告给出的检查查询如下:

SELECT DISTINCT t.oid::regclass, t.reltuples FROM pg_class t JOIN pg_index i ON t.oid = i.indrelid JOIN pg_class ic ON i.indexrelid = ic.oid WHERE t.relhasindex AND ic.relam = 2742;

如果发现表的 reltuples 值异常,请对其执行 ANALYZE,或创建另一个索引来重置该值。

如果你使用 btree_gist,并且相关索引位于可能包含 NaNfloat4/float8 列,或位于 bit/bit varying 列,升级后可能需要执行 REINDEX INDEX your_index_name;

如果你使用 ltree,且 B-tree 索引覆盖包含大量标签的 ltree 值(超过约 14,653 个标签),也应考虑重建相关索引。

PostgreSQL 19 Beta 3

本次发布同时包含 PostgreSQL 19 的第三个 Beta 版本。社区鼓励用户在测试环境中使用典型应用负载测试 PostgreSQL 19,帮助发现缺陷和兼容性问题。PostgreSQL 19 Beta 3 不建议用于生产环境。

从 PostgreSQL 19 的早期版本升级到 PostgreSQL 19 Beta 3,需要采用类似主版本升级的策略,例如 pg_upgradepg_dump/pg_restore。详情请参阅 升级文档

Beta 2 以来的变化包括:回滚 GROUP BY ALL;修复新的 FOR PORTION OF 时态表语法;修复逻辑复制序列同步,包括 REFRESH SEQUENCES 相关竞态;修复逻辑解码并发激活时可能出现的状态变化错误;修复订阅所有权变更问题;修复 postgres_fdw 下推数组比较时可能产生错误结果的问题;修复涉及可空 UNIQUE 约束的外键检查崩溃;修复 pg_plan_advice 对数字字面量下划线的解析;以及修复反解析 JSON_ARRAY(query) 时缺失 FORMAT 子句的问题。

更多信息请参阅: