代码 PostgreSQL 19 Beta 1:REPACK 合并 VACUUM FULL 与 CLUSTER,逻辑复制可复制 sequence

2026-10-07 21:03:40

PostgreSQL 19 Beta 1:REPACK 合并 VACUUM FULL 与 CLUSTER,逻辑复制可复制 sequence

发布公告:
Release Notes:

异步 I/O

PostgreSQL 19 在 18 引入的异步 I/O 子系统上继续推进。io_method=worker 现在会根据新增的 io_min_workers 与 io_max_workers 设置自动伸缩 I/O worker 的数量。

Vacuum 与维护

  • autovacuum 可以使用并行 worker,由新参数 autovacuum_max_parallel_workers 配置。
  • 新的 autovacuum 打分(scoring)系统用于给待 vacuum 的表排优先级。
  • 新策略可以在页面被查询时将其标记为 visible,从而减少后续 vacuum 的工作量。
  • 新增 REPACK 命令及其非阻塞选项 REPACK ... CONCURRENTLY,用于以更低的运维开销重建表。REPACK 合并了现有 VACUUM FULL 与 CLUSTER 两个命令的功能,CONCURRENTLY 模式下不阻塞读写。

SQL

  • 引入 SQL/PGQ(SQL Property Graph Queries)支持,可以用 SQL 标准语法执行属性图查询。
  • 扩展时态查询能力:FOR PORTION OF 子句现在支持 UPDATE 与 DELETE。
  • 新增 ALTER TABLE ... MERGE PARTITIONS 与 ALTER TABLE ... SPLIT PARTITIONS。
  • 支持通过 INSERT ... ON CONFLICT DO SELECT ... RETURNING 返回 upsert 过程中发生冲突的行。
  • 新增 GROUP BY ALL 语法。
  • jsonpath 增加 lower()、upper()、initcap()、replace()、split_part() 以及 trim() 系列函数。

复制

  • 逻辑复制现在可以复制 sequence 的值;当 wal_level 设为 replica 时,可以不重启服务器就启用逻辑复制。
  • 新增只读参数 effective_wal_level,报告当前实际生效的 WAL 级别。
  • 新增 WAIT FOR LSN 命令:会话可以等待直到指定日志位置之前的变更已在副本上重放,然后再执行 SELECT,从而在 standby 上支持 read-your-writes。
  • 新增服务器变量 wal_sender_shutdown_timeout。

其他

  • data checksums 现在可以在数据库服务器运行期间启用或禁用。
  • 新增 SQL 函数,用于取出重建 roles、tablespaces 和 databases 所需的 DDL 语句。
  • random() 现在支持 date 与 timestamp 类型。
  • 通过新的 pg_hosts.conf 文件支持服务端 SNI,使单台服务器可以按主机名提供不同的 TLS 证书。
  • 新增 password_expiration_warning_threshold 设置,默认 7 天。
  • 新增 pg_stat_lock 视图(按锁类型统计)与 pg_stat_recovery 视图。
  • 许多统计视图新增 stats_reset 列。
  • pg_stat_progress_vacuum 与 pg_stat_progress_analyze 新增 started_by 列,pg_stat_progress_vacuum 还增加了 mode 列。
  • log_min_messages 的级别可以按进程类型分别指定。
  • EXPLAIN ANALYZE 可通过其 IO 选项输出异步 I/O 统计信息。

扩展

  • pg_plan_advice 模块用于稳定并控制 planner 的决策。
  • 配套的 pg_stash_advice 扩展可以按 query-id 自动应用这些 advice。

升级注意事项

19 版本包含若干可能影响与之前版本兼容性的变更,升级前需对照 release notes 逐项确认。最终版本计划在 2026 年 9 月/10 月左右发布,当前为 Beta 阶段。

复制全文 生成海报 PostgreSQL 数据库 复制 VACUUM DBA

推荐文章

程序员茄子在线接单