PostgreSQL 18.6 介绍与选型指南
PostgreSQL 18.6(18 系列 2025-09-25 GA 后最新维护版,2026-08-13 发布)版本基准、AIO 等 18 系新特性、核心架构、官方文档快速上手与同类选型对比,全部数据来自官方来源联网查证(查询日期 2026-10-18)。
PostgreSQL 18.6 介绍与选型指南
目标:说清 PostgreSQL 是什么、截至查询日官方最新稳定版本是哪个、18 大版本带来了什么、核心架构与功能特性怎样,以及在什么场景下该选 PostgreSQL、什么场景下应转向同类产品。本文为认知篇(A1):不做本地安装实测,全部版本号、特性与量化数据均来自官方来源联网查证,关键论断随文标注来源与查询日期(2026-10-18)。
一、信息基准
本篇是纯认知与选型文档,先交代"信息从哪来、以哪个版本为基准",便于读者判断时效并自行复核。
1.1 查询与版本基准
- 查询日期:2026-10-18。
- 基准版本:PostgreSQL 18.6。依据:PostgreSQL 官网"Latest Releases"与官方发布总览显示 18 系列最新小版本为 18.6(发布说明标注 2026-08-13);19 大版本截至查询日仅到 RC1(2026-10-15),按"稳定版"口径不计入。
- 参照信息:PG 19 处于 RC1 测试期(Beta1 2026-06-04、Beta4 2026-09-24、RC1 2026-10-15),路线图标注 19 的 GA 计划在 2026 年 10 月。
- 写作方式:不做本地安装实测;所有版本、特性、量化数据以官方来源为准,随文标注来源。
1.2 官方来源清单
| 信息项 | 官方来源 URL | 用途 |
|---|---|---|
| 发布总览(全版本归档) | https://www.postgresql.org/docs/release/ | 确认 18.6 为 18 系最新小版本 |
| 18.6 发布说明 | https://www.postgresql.org/docs/release/18.6/ | 发布日期(2026-08-13)、安全修复 |
| 18.0(大版本)发布说明 | https://www.postgresql.org/docs/release/18.0/ | 18 系新特性(GA 2025-09-25) |
| 版本路线图 | https://www.postgresql.org/developer/roadmap/ | 小版本节奏、PG 19 计划 |
| 官网首页 | https://www.postgresql.org/ | 最新发布动态(19 RC1,2026-10-15) |
| 18 版支持平台 | https://www.postgresql.org/docs/18/supported-platforms.html | 兼容矩阵 |
| 教程:访问数据库 | https://www.postgresql.org/docs/18/tutorial-accessdb.html | 快速上手示例原文 |
| GitHub 同步仓库 | https://github.com/postgres/postgres | 社区活跃度数据(只读副本,官方主仓库在 git.postgresql.org) |
💡 说明:18.5 从未发布——官方 18.6 发布说明明确"18.5 因封装后发现的回归问题未发布",因此从 18.4 直接升到 18.6。这是核对版本号时容易踩的坑(来源:18.6 发布说明,查询日期 2026-10-18)。
二、软件概述
2.1 PostgreSQL 是什么
PostgreSQL 是一个功能强大的开源对象-关系型数据库系统,拥有超过 35 年的活跃开发历史,以可靠性、功能健壮性与性能著称(来源:postgresql.org 官网首页"New to PostgreSQL?"介绍,查询日期 2026-10-18)。它以 SQL 为查询语言,同时提供对象关系特性(继承、自定义类型、函数等)与极其丰富的扩展生态,采用社区驱动的治理模式——由 PostgreSQL Global Development Group(PGDG)主导,无单一商业公司控制核心代码。
PostgreSQL 采用自家的 PostgreSQL License(类 BSD 的宽松许可),允许商用、闭源集成而无传染性义务(来源:postgresql.org/about/licence,查询日期 2026-10-18),这是它与 MySQL(GPL v2)、MongoDB(SSPL)在许可维度上的核心差异。
2.2 版本格局:18.6 为当前稳定版,19 在 RC 期
PostgreSQL 的大版本每年发布一个(近年固定在 9 月下旬),小版本每年 4 次(2、5、8、11 月的第二个周四)。官方路线图显示,下一个大版本 19 计划 2026 年 10 月发布(来源:https://www.postgresql.org/developer/roadmap/ ,查询日期 2026-10-18)。截至查询日的版本格局:
| 版本 | 状态 | 时间 | 说明 |
|---|---|---|---|
| PostgreSQL 18.6 | 最新稳定小版本 | 2026-08-13 | 18 系列当前维护版(18.5 跳号未发布) |
| PostgreSQL 18.0 | 18 大版本 GA | 2025-09-25 | 引入 AIO 等 18 系新特性 |
| PostgreSQL 17.11 | 上一大版本维护版 | 官方发布总览在列 | 17 系列持续维护中 |
| PostgreSQL 19 RC1 | 测试版(RC) | 2026-10-15 | 19 的 GA 计划 2026-10(截至查询日未 GA) |
来源:postgresql.org 发布总览、官网首页 Latest Releases、官方路线图(查询日期 2026-10-18)。
关键差异解读:PG 的小版本(18.x)只含缺陷与安全修复、无需 dump/restore 即可升级;大版本(18 → 19)才需要 pg_upgrade 之类的升级动作。生产环境应跟踪小版本(当前 18.6),等 19 正式 GA 并发布一两个小版本后再评估大版本升级。
💡 技术拓展:开源数据库的版本发布模型不止 PG 这种"年度大版本 + 季度小版本"一种。常见模型对比——
模型 代表 特点 适用场景 年度大版本 + 季度小版本 PostgreSQL 大版本 9 月 GA,小版本只修错不换特性 生产稳定可预期 日历版本 + Innovation/LTS 双轨 MySQL 26.7 起 Innovation 季度接棒、LTS 长期维护 尝鲜与稳态并存 Major 每 2 年 + Minor 增量 MongoDB 8.2 起 Major 5 年生命周期,Minor 顺序升级 大版本锁定 Standard + Extended 双轨 Redis Open Source 中间 minor 约 6 个月窗口 缓存类高频升级 本文基准 18.6 是"最新稳定版"口径下的官方选择;生产升级策略见第六章。
2.3 许可与商业支持
PostgreSQL 核心完全由社区开发与发布,许可宽松(PostgreSQL License,类 BSD);商业支持由 EDB、各云厂商(AWS RDS/Aurora、Azure、阿里云 RDS PPAS 等)等第三方提供,核心代码不受任何单一厂商控制(来源:postgresql.org/about 与 governance 页,查询日期 2026-10-18)。解读:这使 PostgreSQL 成为"最不容易被厂商锁定"的数据库选择之一,也是其在企业与政府项目中渗透率持续走高的原因之一。
三、核心架构
3.1 进程模型与存储
PostgreSQL 采用"每连接一进程"的架构:主进程 postmaster 监听连接,为每个客户端派生一个独立后端进程(backend),配合后台工作进程(checkpointer、bgwriter、walwriter、autovacuum 等)协作。数据目录按"库(database)→ 模式(schema)→ 表/对象"组织,表数据存储在堆文件中,索引与数据分离(来源:PostgreSQL 官方文档架构相关章节,查询日期 2026-10-18)。
💡 技术拓展:PG 的索引类型是可多选的,不止默认的 B-tree。官方内置索引类型对比——
索引类型 原理/特点 适用场景 B-tree 平衡树,支持等值与范围 默认选择,绝大多数查询 Hash 哈希等值 仅等值查询 GiST 通用搜索树,可扩展 全文检索、几何、范围类型 SP-GiST 空间分区 GiST 非平衡数据结构(前缀树等) GIN 倒排 JSONB、数组、全文检索 BRIN 块范围摘要 时序等物理有序大表,体积极小 18 的"skip scan"增强让多列 B-tree 在更多"前导列缺失"的查询里也能用上索引;JSONB 场景通常配 GIN。本文主线以官方默认 B-tree 为主。
3.2 MVCC 与事务
PostgreSQL 的 MVCC 通过行版本(tuple)加事务快照实现:更新生成新版本行、旧版本由 autovacuum 回收;这带来读写互不阻塞的特性,也带来著名的表膨胀问题——因此 autovacuum 是 PG 运维的核心一环。事务支持完整 ACID,隔离级别提供读已提交(默认)、可重复读、可串行化三级(来源:PostgreSQL 官方文档并发控制章节,查询日期 2026-10-18)。
3.3 复制与高可用
PG 内置两种复制:物理流复制(WAL 日志字节级复制,形成主从热备,也是外置高可用方案的基石)与逻辑复制(按发布/订阅复制行变更,支持跨大版本、跨库选择性复制)。高可用切换本身由 Patroni、repmgr 等社区方案编排(来源:PostgreSQL 官方文档高可用章节,查询日期 2026-10-18)。
💡 技术拓展:高可用形态不止一种。常见方案对比——
方案 一致性 切换自动化 适用场景 流复制(异步) 最终一致 需外置工具 读扩展、容灾 流复制(同步) 主从强一致 需外置工具 金融类写强一致 Patroni 编排 同步/异步可选 完整自动化(类 Raft 选主) 生产主流选择 逻辑复制 最终一致(可跨版本) 非高可用用途 升级迁移、订阅分发 PG 官方核心只提供复制机制本身,生产高可用通常采用"流复制 + Patroni"组合;本文不展开部署细节。
四、功能特性
4.1 18 大版本核心特性(2025-09-25 GA)
以下为官方 18.0 发布说明汇总的核心特性(来源:https://www.postgresql.org/docs/release/18.0/ ,查询日期 2026-10-18):
| 特性 | 说明 |
|---|---|
| 异步 I/O(AIO)子系统 | 提升顺序扫描、位图堆扫描、vacuum 等操作的 I/O 性能 |
| pg_upgrade 保留优化器统计 | 大版本升级后不再需要漫长的统计重算,升级窗口显著缩短 |
| 多列 B-tree skip scan | 前导列未出现的查询也可利用多列索引 |
| uuidv7() 函数 | 生成按时间有序的 UUID,兼顾唯一性与索引友好性 |
| 虚拟生成列(默认) | 读取时计算的生成列,成为生成列默认形态 |
| OAuth 认证 | 服务器原生支持 OAuth 2.0 客户端认证 |
| RETURNING 子句支持 OLD/NEW | INSERT/UPDATE/DELETE 返回变更前后行值 |
| 时序与分区持续增强 | 官方说明中还有多项性能与运维改进 |
解读:18 的主题是"升级体验与 I/O 性能"——pg_upgrade 保留统计与 AIO 是对大集群最实在的两项改进;skip scan 与 uuidv7() 则直接改善应用层设计。
4.2 18.6 维护版内容(2026-08-13)
18.6 是常规安全与缺陷修复版本(无需 dump/restore,18.x 内直接升级),官方说明的重点安全修复包括(来源:https://www.postgresql.org/docs/release/18.6/ ,查询日期 2026-10-18):
| 修复项 | 说明 |
|---|---|
| 逻辑解码插件白名单 | 新增 output_plugin_libraries 参数,限制逻辑解码可加载的输出插件,堵住复制用户任意加载库的风险(CVE-2026-6471 相关) |
| pgcrypto 修复 | CVE-2026-14663 |
| psql COPY 处理修复 | CVE-2026-6464 |
| portal 行类型修复 | CVE-2026-16239 |
| to_char 时区缩写缓冲区溢出修复 | CVE-2026-14669 |
官方还提示了两处升级后动作:GIN 索引可能存在损坏的 reltuples 统计值需清理;使用 contrib/btree_gist 或 contrib/ltree 的索引可能需要重建。解读:跟踪到 18.6 是安全合规要求,升级前阅读官方迁移清单是必做动作。
4.3 扩展生态
PG 的扩展机制(CREATE EXTENSION)是其功能面的最大杠杆:PostGIS(GIS)、pg_stat_statements(慢查询统计)、pgvector(向量检索)等生态扩展均为生产主流。扩展随发行版包或源码编译分发,官方功能矩阵(Feature Matrix)页可按版本核对特性可用性(来源:postgresql.org 官网 Feature Matrix 入口,查询日期 2026-10-18)。
五、快速上手(官方文档指引)
本节不做本地实测,给出官方文档的最小示例,命令与回显保持官方原文形态并附官方链接。安装的完整从零流程属部署类文档职责,本篇只给入口与最小示例。
5.1 获取与安装入口
官方下载页按发行版给出各平台安装入口(https://www.postgresql.org/download/ );源码编译的支持平台与前置依赖见 18 版安装章节(https://www.postgresql.org/docs/18/installation.html )。从源码构建后通过 createdb 等工具即可使用,完整安装实测见本站后续部署类文档。
5.2 创建数据库并访问(官方教程原文)
官方教程用 createdb 创建数据库(来源:https://www.postgresql.org/docs/18/tutorial-createdb.html ,查询日期 2026-10-18):
$ createdb mydb
然后用交互终端 psql 访问(来源:https://www.postgresql.org/docs/18/tutorial-accessdb.html ,查询日期 2026-10-18):
$ psql mydb
官方文档展示的连接成功回显形态如下:
psql (18.6)
Type "help" for help.
mydb=>
说明:若以数据库超级用户连接,提示符为 mydb=#;不指定库名时默认使用与操作系统用户同名的库。
5.3 最小验证查询(官方教程原文)
官方教程给出三条示例查询验证可用性(来源同上,查询日期 2026-10-18):
mydb=> SELECT version();
mydb=> SELECT current_date;
mydb=> SELECT 2 + 2;
其中 SELECT version(); 的官方示例回显为:
version
-------------------------------------------------------------------
PostgreSQL 18.6 on x86_64-pc-linux-gnu, compiled by gcc (Debian 4.9.2-10) 4.9.2, 64-bit
(1 row)
说明:版本字符串会随编译环境变化,能返回该行即说明 psql、连接与 SQL 执行链路全部正常。psql 的内部命令以反斜杠开头:\h 查 SQL 语法帮助、\q 退出(官方原文)。
六、适用场景与限制
6.1 典型适用场景
- 复杂查询与分析混合负载:窗口函数、CTE、并行查询能力强,报表与业务库同栈。
- 地理信息与空间数据:PostGIS 是业界事实标准。
- 数据完整性要求高的核心系统:严格的事务语义、丰富的约束类型(排他约束、延迟约束等)。
- JSONB 半结构化 + 关系混合:文档灵活性与关系约束兼得,配 GIN 索引。
- 许可合规敏感场景:宽松许可无传染性,可放心嵌入商业产品。
6.2 限制与注意事项
- 表膨胀运维:MVCC 设计使 autovacuum 调优成为 PG 运维必修课(来源:官方并发控制文档,查询日期 2026-10-18)。
- 高连接数下的进程开销:每连接一进程模型在海量短连接场景下应使用连接池(PgBouncer 等)。
- 每连接单库扩展需外置:分布式分片无官方内核方案,Citus 等以扩展形态提供。
- 版本节奏:大版本升级(18 → 19)需 pg_upgrade/逻辑复制演练;小版本(18.6)可直接替换升级。
6.3 快速选型判断
- 如果业务是标准 OLTP 且生态/人才池优先 → MySQL 26.7/9.7 LTS 一样合适,PG 胜在复杂查询与扩展生态。
- 如果需要GIS、向量检索、强 SQL 标准 → PostgreSQL 18.6 是开源首选。
- 如果是文档为主、模式频繁演进、需要内置分片 → 评估 MongoDB 9.0。
- 如果是缓存与低延迟 KV 负载 → 评估 Redis 8.10。
七、同类选型对比
本章数据为联网实查:GitHub 仓库指标来自 GitHub REST API(查询日期 2026-10-18);版本与节奏来自各官方发布页;平台支持来自各官方文档。
7.1 主流开源数据库量化对比
| 维度 | PostgreSQL | MySQL | MongoDB | Redis |
|---|---|---|---|---|
| 最新稳定版(查询日 2026-10-18) | 18.6(18.0 GA 2025-09-25) | 26.7.0(Innovation)/ 9.7.2 LTS | 9.0(2026-09-29 GA) | 8.10(2026-09-14 GA) |
| 版本节奏 | 大版本每年一个,小版本季度发布 | 日历版本制:Innovation 季度、LTS 季度维护 | Major 每 2 年(5 年生命周期),Minor 增量 | minor 约每季度,Standard/Extended 双轨 |
| GitHub Stars | 22,450 | 12,465 | 28,648 | 76,925 |
| GitHub Forks | 5,964 | 4,378 | 5,818 | 24,864 |
| 最近仓库推送 | 2026-10-17(同步副本) | 2026-10-14 | 2026-10-17 | 2026-10-17 |
| 许可 | PostgreSQL License(BSD 类) | GPL v2 / 商业双许可 | SSPL v1(社区版) | RSALv2 / SSPLv1 / AGPLv3 三选一 |
| 数据模型 | 关系型 + 文档(JSONB) | 关系型(B+ 树) | 文档(BSON) | 内存键值 + 多结构 |
| 生产高可用 | 流/逻辑复制 + Patroni 等外置编排 | 主从/半同步/组复制 | 副本集 + 分片集群 | 主从/哨兵/Cluster |
数据来源:GitHub REST API(stars/forks/pushed,查询日期 2026-10-18);PostgreSQL——官方发布总览与路线图(19 尚为 RC1,2026-10-15);MySQL——Oracle 官方博客与下载页;MongoDB——官方新闻稿(2026-09-29);Redis——redis.io 官方博客(2026-09-14)与版本管理页。注意 postgres/postgres 的 GitHub 仓库是官方 Git 仓库(git.postgresql.org)的只读副本,stars 数据仅反映副本仓库关注度。
解读:量化维度上 PG 的社区仓库增长与许可宽松度是显性优势;但"谁更好"取决于负载——复杂查询、扩展生态、许可合规选 PG,简单高并发 OLTP 与既有生态惯性选 MySQL。
7.2 关系型同类:MySQL 与 MariaDB
- MySQL:与 PG 定位最接近的竞品。2026 年起采用日历版本制(Innovation + LTS 双轨),官方博客宣布 26.7.0 为首个日历版本 Innovation(2026-07-31);其优势在托管服务成熟度、分库分表中间件生态与人才池(来源:Oracle 官方博客与下载页,查询日期 2026-10-18)。
- MariaDB:MySQL 兼容分支,年度 LTS + 季度滚动模型,当前 Stable 13.0.2(2026-09-15)、LTS 线 11.8.9(2026-08-22),11.8 起内置 VECTOR 类型与 HNSW 向量索引(来源:mariadb.org 发布总览,查询日期 2026-10-18)。从 MySQL 迁出时通常先评估它。
7.3 平台与兼容矩阵
| 维度 | PostgreSQL | MySQL | MongoDB | Redis |
|---|---|---|---|---|
| 官方平台覆盖 | Linux、Windows、FreeBSD/OpenBSD/NetBSD/DragonFlyBSD、macOS、Solaris/illumos | Windows、Ubuntu、Debian、SUSE、RHEL/Oracle Linux、Fedora、Linux-Generic、macOS | 推荐生产平台:Amazon Linux、Debian、RHEL(8.0+,Rocky/Alma 兼容)、SLES、Ubuntu LTS、Windows Server | Linux 原生(官方推荐)、macOS(brew)、Windows 经第三方 Memurai |
| CPU 架构 | x86、PowerPC、S/390、SPARC、ARM、MIPS、RISC-V | x86 64 位、ARM 64 位 | x86_64(Haswell+)、ARM64 | x86_64、ARM64 等 |
| 明确的兼容性告警 | 无特殊内核限制 | Linux-Generic 要求 glibc 2.28 | Linux 内核 6.19–7.0.13 与其 TCMalloc 不兼容,启动自检拒绝(需 7.0.14+) | 无 |
来源:postgresql.org 18 版支持平台页、dev.mysql.com 下载页、MongoDB 生产注意事项页、redis.io 安装文档(查询日期 2026-10-18)。解读:PG 是四者中架构覆盖最广、内核兼容性限制最少的;如果目标环境是小众架构(MIPS、RISC-V 等),PG 基本是唯一官方覆盖的选择。
7.4 如何选
- 选 PostgreSQL 18.6:复杂 SQL/GIS/向量扩展、许可合规敏感、想要社区治理无厂商锁定。
- 选 MySQL 26.7/9.7:标准 OLTP、托管服务与分库分表生态、团队既有 MySQL 经验。
- 选 MongoDB 9.0:文档模型与内置分片水平扩展。
- 选 Redis 8.10:内存 KV 与低延迟数据结构负载。
- 选 MariaDB 13.0/11.8:MySQL 兼容迁移 + 原生向量诉求。
八、参考链接
- PostgreSQL 官网 Latest Releases(19 RC1,2026-10-15):https://www.postgresql.org/ (查询日期 2026-10-18)
- PostgreSQL 发布总览(全版本归档):https://www.postgresql.org/docs/release/ (查询日期 2026-10-18)
- PostgreSQL 18.6 Release Notes(2026-08-13):https://www.postgresql.org/docs/release/18.6/ (查询日期 2026-10-18)
- PostgreSQL 18.0 Release Notes(2025-09-25):https://www.postgresql.org/docs/release/18.0/ (查询日期 2026-10-18)
- PostgreSQL 官方路线图(小版本节奏与 PG 19 计划):https://www.postgresql.org/developer/roadmap/ (查询日期 2026-10-18)
- PostgreSQL 18 支持平台:https://www.postgresql.org/docs/18/supported-platforms.html (查询日期 2026-10-18)
- PostgreSQL 18 教程 — Accessing a Database:https://www.postgresql.org/docs/18/tutorial-accessdb.html (查询日期 2026-10-18)
- PostgreSQL 18 教程 — Creating a Database:https://www.postgresql.org/docs/18/tutorial-createdb.html (查询日期 2026-10-18)
- MySQL July 2026 GA Releases(对比来源):https://blogs.oracle.com/mysql/post/mysql-july-2026-ga-releases-now-available (查询日期 2026-10-18)
- MongoDB 9.0 发布新闻稿(对比来源):https://investors.mongodb.com/news-releases/news-release-details/mongodb-launches-mongodb-90-best-version-ever-built-and-atlas (查询日期 2026-10-18)
- Redis 8.10 发布公告(对比来源):https://redis.io/blog/announcing-redis-810-compact-hash-jsonpath-extensions-performance-improvements-and-more/ (查询日期 2026-10-18)
- MariaDB 官方发布总览(对比来源):https://mariadb.org/mariadb/all-releases/ (查询日期 2026-10-18)