pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
文档版本对比
POSTGRESQL · VERSION COMPARE
本次发布的完整功能、修复与兼容性说明,以及它们在其他版本中的关联记录。
从起始版本之后,看到目标版本为止。大版本名称代表该系列首个正式版本。
收录 PostgreSQL 9.0 起的 17 个大版本、352 份发布说明;数据更新于 2026-09-26。
本次发布的全部变更
2025-09-25
18.0 受支持版本维护截止 2030-11-14
对于希望从任何以前的版本迁移数据的人来说,需要使用pg_dumpall进行转储/恢复,或者使用pg_upgrade或逻辑复制。有关迁移到新主要版本的通用信息,请参阅第 18.6 节。
版本 18 包含许多可能影响与以前版本兼容性的更改。请注意以下不兼容项:
兼容性
将initdb默认更改为启用数据校验和(Greg Sabino Mullane)§
可以使用新的 initdb 选项 --no-data-checksums 禁用校验和。pg_upgrade要求匹配集簇校验和设置,因此这个新选项对于升级不带校验和的旧集簇很有用。
兼容性
更改时区缩写处理(Tom Lane)§
系统现在将优先考虑当前会话的时区缩写,然后检查服务器变量timezone_abbreviations。以前是先检查 timezone_abbreviations。
兼容性
对 MD5 密码的支持将在未来的主要版本中移除。CREATE ROLE和ALTER ROLE现在在设置 MD5 密码时会发出弃用警告。可以通过将md5_password_warnings参数设置为 off 来禁用这些警告。
兼容性
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
兼容性
禁止不记录 WAL 的分区表(Michael Paquier)§
以前 ALTER TABLE SET [UN]LOGGED 不执行任何操作,并且创建不记录 WAL 的分区表也不会导致其子表不记录 WAL。
兼容性
移除列 pg_backend_memory_contexts.parent(Melih Mutlu)§
由于添加了 pg_backend_memory_contexts.path,不再需要此列。
兼容性
将 pg_backend_memory_contexts.level 和 pg_log_backend_memory_contexts() 更改为从1开始(Melih Mutlu, Atsushi Torikoshi, David Rowley, Fujii Masao)§ § §
这些以前是从零开始的。
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
兼容性
更改全文检索,使其使用数据库集簇默认排序规则提供程序来读取配置文件和词典,而不再始终使用 libc(Peter Eisentraut)§
如果数据库集簇默认使用的非 libc 排序规则提供程序(例如 ICU、builtin)对 LC_CTYPE 所处理字符的处理方式与 libc 不同,那么某些全文检索函数以及pg_trgm扩展的行为可能会发生变化。使用pg_upgrade升级此类数据库集簇时,建议在升级后重新索引所有与全文检索和pg_trgm相关的索引。
服务器 / 优化器
自动删除一些不必要的表自连接(Andrey Lepikhov, Alexander Kuzmenkov, Alexander Korotkov, Alena Rybakina)§
可以使用服务器变量enable_self_join_elimination禁用此优化。
服务器 / 优化器
将一些 IN (VALUES ...) 转换为 x = ANY ... 以获得更好的优化器统计信息(Alena Rybakina, Andrei Lepikhov)§
服务器 / 优化器
允许 SELECT DISTINCT 的键在内部重新排序以避免排序(Richard Guo)§
可以使用enable_distinct_reordering禁用此优化。
服务器 / 优化器
改进 generate_series() 使用 numeric 和 timestamp 值时的行数估计(David Rowley, Song Jinzhou)§ §
服务器 / 优化器
允许优化器使用 Right Semi Join 计划(Richard Guo)§
半连接用于查找是否存在至少一个匹配项。
服务器 / 优化器
改进分区查询的代价估算(Nikita Malakhov, Andrei Lepikhov)§
服务器 / 优化器
改进禁用优化器功能的处理(Robert Haas)§
服务器 / 一般性能
添加异步 I/O 子系统(Andres Freund, Thomas Munro, Nazir Bilal Yavuz, Melanie Plageman)§ § § § § § § § § § §
此功能允许后端排队多个读取请求,从而实现更高效的顺序扫描、位图堆扫描、清理等。这由服务器变量io_method启用,并添加了服务器变量io_combine_limit和io_max_combine_limit来控制它。这还使得不支持 fadvise() 的系统也可以将effective_io_concurrency和maintenance_io_concurrency设为大于零的值。新的系统视图 pg_aios 显示用于异步 I/O 的文件句柄。
服务器 / 一般性能
改进访问许多关系的查询的锁定性能(Tomas Vondra)§
服务器 / 一般性能
允许普通清理冻结某些页面,即使它们都是可见的(Melanie Plageman)§ §
这减少了后期全关系冻结的开销。其激进性可以通过服务器变量和每表设置vacuum_max_eager_freeze_failure_rate控制。以前,在需要冻结之前,清理从不处理所有可见页面。
服务器 / 一般性能
添加服务器变量vacuum_truncate以控制VACUUM期间的文件截断(Nathan Bossart, Gurjeet Singh)§
已经存在一个具有相同名称和行为的存储级别参数。
服务器 / 一般性能
将服务器变量effective_io_concurrency和maintenance_io_concurrency的默认值增加到 16(Melanie Plageman)§ §
这更准确地反映了现代硬件。
服务器 / 监控
增加服务器变量log_connections的日志记录粒度(Melanie Plageman)§
此服务器变量以前仅接受布尔值;布尔值用法仍受支持。
服务器 / 监控
添加 log_connections 选项以报告连接阶段的持续时间(Melanie Plageman)§
服务器 / 监控
添加log_line_prefix转义 %L 以输出客户端IP地址(Greg Sabino Mullane)§
服务器 / 监控
添加服务器变量log_lock_failures以记录锁获取失败(Yuki Seino, Fujii Masao)§ §
具体来说,它报告 SELECT ... NOWAIT 锁失败。
服务器 / 监控
修改 pg_stat_all_tables 及其变体以报告在VACUUM、ANALYZE及其自动执行的变体中花费的时间(Sami Imseih)§
新列是 total_vacuum_time、total_autovacuum_time、total_analyze_time 和 total_autoanalyze_time。
服务器 / 监控
向VACUUM和ANALYZE添加延迟时间报告(Bertrand Drouvot, Nathan Bossart)§ §
此信息出现在服务器日志、系统视图 pg_stat_progress_vacuum 和 pg_stat_progress_analyze 以及VACUUM和ANALYZE在 VERBOSE 模式下的输出中;必须使用服务器变量track_cost_delay_timing启用跟踪。
服务器 / 监控
添加完整WAL缓冲区计数到 VACUUM/ANALYZE (VERBOSE) 和 autovacuum 日志输出(Bertrand Drouvot)§
服务器 / 监控
添加每后端 I/O 统计信息报告(Bertrand Drouvot)§ §
统计信息通过 pg_stat_get_backend_io() 访问。每后端 I/O 统计信息可以通过 pg_stat_reset_backend_stats() 清除。
服务器 / 监控
添加 pg_stat_io 列以字节报告 I/O 活动(Nazir Bilal Yavuz)§
新列是 read_bytes、write_bytes 和 extend_bytes。op_bytes 列(始终等于 BLCKSZ)已移除。
服务器 / 监控
更改服务器变量track_wal_io_timing以控制在pg_stat_io而不是 pg_stat_wal中跟踪WAL计时(Bertrand Drouvot)§
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
服务器 / 监控
添加函数 pg_stat_get_backend_wal() 以返回每后端WAL统计信息(Bertrand Drouvot)§
每后端WAL统计信息可以通过 pg_stat_reset_backend_stats() 清除。
服务器 / 监控
添加函数 pg_ls_summariesdir() 以专门列出 PGDATA/pg_wal/summaries 的内容(Yushi Ogiwara)§
服务器 / 监控
添加列 pg_stat_checkpointer.num_done 以报告已完成的检查点数量(Anton A. Melnikov)§
列 num_timed 和 num_requested 同时统计已完成和已跳过的检查点。
服务器 / 监控
添加列 pg_stat_checkpointer.slru_written 以报告SLRU写入的缓冲区(Nitin Jadhav)§
此外,修改检查点服务器日志消息以报告单独的共享缓冲区和SLRU缓冲区值。
服务器 / 监控
添加列到 pg_stat_database 以报告并行工作者活动(Benoit Lobréau)§
新列是 parallel_workers_to_launch 和 parallel_workers_launched。
服务器 / 监控
让常量列表的查询 ID 计算只考虑第一个和最后一个常量(Dmitry Dolgov, Sami Imseih)§ § §
查询规范化由pg_stat_statements使用。
服务器 / 监控
调整查询 ID 计算以将使用相同关系名称的查询组合在一起(Michael Paquier, Sami Imseih)§
即使不同模式中的表具有不同的列名,这也是成立的。
服务器 / 监控
添加列 pg_backend_memory_contexts.type 以报告内存上下文的类型(David Rowley)§
服务器 / 监控
添加列 pg_backend_memory_contexts.path 以显示内存上下文父级(Melih Mutlu)§
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
服务器 / 权限
添加函数 pg_get_acl() 以检索数据库访问控制详细信息(Joel Jacobson)§ §
服务器 / 权限
添加函数 has_largeobject_privilege() 以检查大型对象权限(Yugo Nagata)§
服务器 / 权限
允许ALTER DEFAULT PRIVILEGES定义大型对象默认权限(Takatsuka Haruka, Yugo Nagata, Laurenz Albe)§
服务器 / 权限
添加预定义角色 pg_signal_autovacuum_worker(Kirill Reshke)§
这允许向自动清理工作者发送信号。
服务器 / 服务器配置
添加对 OAuth 认证方法的支持(Jacob Champion, Daniel Gustafsson, Thomas Munro)§
这为 pg_hba.conf 添加了 oauth 认证方法、libpq OAuth 选项、一个用于加载令牌验证库的服务器变量oauth_validator_libraries,以及一个 --with-libcurl 配置标志,用于添加所需的编译时库。
服务器 / 服务器配置
添加服务器变量ssl_tls13_ciphers以允许指定多个以冒号分隔的 TLSv1.3 密码套件(Erica Zhang, Daniel Gustafsson)§
服务器 / 服务器配置
将服务器变量ssl_groups的默认值更改为包含椭圆曲线 X25519(Daniel Gustafsson, Jacob Champion)§
服务器 / 服务器配置
将服务器变量 ssl_ecdh_curve 重命名为ssl_groups,并允许指定多个以冒号分隔的ECDH曲线(Erica Zhang, Daniel Gustafsson)§
以前的名称仍然有效。
服务器 / 服务器配置
添加服务器变量autovacuum_worker_slots以指定后台工作者的最大数量(Nathan Bossart)§
设置此变量后,autovacuum_max_workers可以在运行时调整到此最大值,而无需重新启动服务器。
服务器 / 服务器配置
允许指定触发 autovacuum 的死元组的固定数量(Nathan Bossart, Frédéric Yhuel)§
服务器变量是autovacuum_vacuum_max_threshold。百分比仍用于触发。
服务器 / 服务器配置
更改服务器变量max_files_per_process以仅限制后端打开的文件(Andres Freund)§
以前,postmaster 打开的文件也计入此限制。
服务器 / 服务器配置
添加服务器变量num_os_semaphores以报告所需信号量的数量(Nathan Bossart)§
这对于操作系统配置很有用。
服务器 / 服务器配置
添加服务器变量extension_control_path以指定扩展控制文件的位置(Peter Eisentraut, Matheus Alcantara)§ §
服务器 / 流复制与恢复
允许使用服务器变量idle_replication_slot_timeout自动使非活动复制槽失效(Nisha Moond, Bharath Rupireddy)§
服务器 / 流复制与恢复
添加服务器变量max_active_replication_origins以控制最大活动复制源(Euler Taveira)§
这以前由max_replication_slots控制,但这个新设置允许在需要较少槽位的情况下具有更高的源计数。
服务器 / 逻辑复制
将CREATE SUBSCRIPTION流式选项的默认值从 off 更改为 parallel(Vignesh C)§
服务器 / 逻辑复制
允许ALTER SUBSCRIPTION更改复制槽的两阶段提交行为(Hayato Kuroda, Ajin Cherian, Amit Kapila, Zhijie Hou)§ §
工具命令
允许像现有本地表一样创建外部表(Zhang Mingli)§
工具命令
允许文本位置搜索函数与非确定性排序规则一起使用(Peter Eisentraut)§
这些以前会生成错误。
工具命令
添加内置排序规则提供程序 PG_UNICODE_FAST(Jeff Davis)§
此区域设置支持大小写映射,但按代码点顺序排序,而非自然语言顺序。
工具命令
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
工具命令
添加函数以修改每关系和每列优化器统计信息(Corey Huinker)§ § §
这些函数是 pg_restore_relation_stats()、pg_restore_attribute_stats()、pg_clear_relation_stats() 和 pg_clear_attribute_stats()。
工具命令
添加服务器变量file_copy_method以控制文件复制方法(Nazir Bilal Yavuz)§
这控制 CREATE DATABASE ... STRATEGY=FILE_COPY 和 ALTER DATABASE ... SET TABLESPACE 是使用文件复制还是克隆。
工具命令 / 约束
允许指定不重叠的 PRIMARY KEY、 UNIQUE 和外键约束(Paul A. Jungwirth)§ §
这通过 WITHOUT OVERLAPS 用于 PRIMARY KEY 和 UNIQUE,并通过 PERIOD 用于外键,所有这些都应用于最后一个指定的列。
工具命令 / 约束
允许将 CHECK 和外键约束指定为 NOT ENFORCED(Amul Sul)§ §
这还添加了列 pg_constraint.conenforced。
工具命令 / 约束
要求主键/外键关系使用确定性排序规则或相同的非确定性排序规则(Peter Eisentraut)§
如果这些要求不满足,pg_dump的恢复(pg_upgrade也使用)将失败;必须对模式进行更改才能使这些升级方法成功。
工具命令 / 约束
将列 NOT NULL 规范存储在 pg_constraint 中(Álvaro Herrera, Bernd Helmle)§ §
这允许为 NOT NULL 约束指定名称。这还向外部表添加了 NOT NULL 约束,并向本地表添加了 NOT NULL 继承控制。
工具命令 / 约束
允许ALTER TABLE设置 NOT NULL 约束的 NOT VALID 属性(Rushabh Lathia, Jian He)§
工具命令 / 约束
允许分区表上的 NOT VALID 外键约束(Amul Sul)§
工具命令 / COPY
添加 REJECT_LIMIT 以控制 COPY FROM 可以忽略的无效行数(Atsushi Torikoshi)§
这在 ON_ERROR = 'ignore' 时可用。
工具命令 / COPY
允许 COPY TO 从已填充的物化视图复制行(Jian He)§
工具命令 / COPY
添加 COPY LOG_VERBOSITY 级别 silent 以抑制被忽略行的日志输出(Atsushi Torikoshi)§
当 on_error = 'ignore' 时,此新级别会抑制与被丢弃输入行有关的消息输出。
工具命令 / COPY
禁止在外部表上 COPY FREEZE(Nathan Bossart)§
以前,COPY 可以工作,但 FREEZE 会被忽略,所以禁止此命令。
工具命令 / EXPLAIN
自动将 BUFFERS 输出包含在 EXPLAIN ANALYZE 中(Guillaume Lelarge, David Rowley)§
工具命令 / EXPLAIN
添加完整WAL缓冲区计数到 EXPLAIN (WAL) 输出(Bertrand Drouvot)§
工具命令 / EXPLAIN
在 EXPLAIN ANALYZE 中,报告每个索引扫描节点使用的索引查找次数(Peter Geoghegan)§
工具命令 / EXPLAIN
将窗口函数参数的详细信息添加到 EXPLAIN 输出(Tom Lane)§
工具命令 / EXPLAIN
将 Parallel Bitmap Heap Scan 工作者缓存统计信息添加到 EXPLAIN ANALYZE(David Geier, Heikki Linnakangas, Donghang Lin, Alena Rybakina, David Rowley)§
数据类型
向 json{b}_strip_nulls 添加可选参数,以允许删除数组中的空值元素(Florents Tselai)§
数据类型
添加函数 array_sort(),它对数组的第一维进行排序(Junwang Zhao, Jian He)§
数据类型
添加函数 array_reverse(),它反转数组的第一维(Aleksander Alekseev)§
数据类型
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
函数
添加函数 casefold() 以允许更复杂的忽略大小写匹配(Jeff Davis)§
这允许更准确的比较,即一个字符可以有多个大写或小写等价物,或者大写或小写转换会改变字符的数量。
函数
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
函数
改进 EXTRACT(QUARTER ...) 对负值的输出(Tom Lane)§
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
函数
向 to_number() 添加罗马数字支持(Hunaid Sohail)§
这通过 RN 模式访问。
Libpq
添加函数 PQfullProtocolVersion() 以报告完整的(包括次要版本)协议版本号(Jacob Champion, Jelte Fennema-Nio)§
Libpq
向客户端报告search_path更改(Alexander Kukushkin, Jelte Fennema-Nio, Tomas Vondra)§ §
Libpq
添加 libpq 连接参数 sslkeylogfile,该参数会转储SSL密钥材料(Abhishek Chanda, Daniel Gustafsson)§
这对于调试很有用。
Libpq
修改一些 libpq 函数签名以使用 int64_t(Thomas Munro)§
这些以前使用 pg_int64,现已弃用。
psql
允许 psql 解析、绑定和关闭命名预处理语句(Anthonin Bonnefoy, Michael Paquier)§ §
这通过新命令 \parse、\bind_named 和 \close_prepared 完成。
psql
添加 psql 反斜杠命令以允许发出管道查询(Anthonin Bonnefoy)§ § §
新命令是 \startpipeline、\syncpipeline、\sendpipeline、\endpipeline、\flushrequest、\flush 和 \getresults。
psql
允许将管道状态添加到 psql 提示符并添加相关状态变量(Anthonin Bonnefoy)§
新的提示符字符是 %P,新的 psql 变量是 PIPELINE_SYNC_COUNT、PIPELINE_COMMAND_COUNT 和 PIPELINE_RESULT_COUNT。
psql
允许将连接服务名称添加到 psql 提示符或通过 psql 变量访问它(Michael Banck)§
psql
添加 psql 选项,在所有列表命令上使用扩展模式(Dean Rasheed)§
添加反斜杠后缀 x 启用此功能。
psql
添加 psql 变量WATCH_INTERVAL以设置默认的 \watch 等待时间(Daniel Gustafsson)§
服务器应用
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
服务器应用
添加 initdb 选项 --no-sync-data-files 以避免同步堆/索引文件(Nathan Bossart)§
initdb 选项 --no-sync 仍然可用,以避免同步任何文件。
服务器应用
添加pg_combinebackup选项 -k/--link 以启用硬链接(Israel Barth Rubio, Robert Haas)§
只有某些文件可以硬链接。如果备份将独立使用,则不应使用此功能。
服务器应用
允许pg_verifybackup验证 tar 格式备份(Amul Sul)§
服务器应用
添加pg_resetwal选项 --char-signedness 以更改默认的 char 有符号性(Masahiko Sawada)§
服务器应用 / pg_dump/pg_dumpall/pg_restore
添加 pg_dump 和pg_dumpall选项 --sequence-data 以转储通常会被排除的序列数据(Nathan Bossart)§ §
服务器应用 / pg_dump/pg_dumpall/pg_restore
添加pg_dump、pg_dumpall和pg_restore选项 --statistics-only、--no-statistics、--no-data 和 --no-schema(Corey Huinker, Jeff Davis)§
“同一变更”有完整对应证据;“相关提交”可能包含多个独立事项、部分回补或后续调整,各版本说明分别保留。
服务器应用 / pg_dump/pg_dumpall/pg_restore
添加选项 --no-policies 以禁用pg_dump、pg_dumpall、pg_restore中的行级安全策略处理(Nikolay Samokhvalov)§
这对于迁移到具有不同策略的系统很有用。
服务器应用 / pg_upgrade
添加 pg_upgrade 选项 --swap 以交换目录而不是复制、克隆或链接文件(Nathan Bossart)§
此模式可能是最快的。
服务器应用 / 逻辑复制应用程序
添加pg_createsubscriber选项 --all 以创建所有数据库的逻辑副本(Shubham Khanna)§
服务器应用 / 逻辑复制应用程序
添加 pg_createsubscriber 选项 --enable-two-phase 以启用预备事务(Shubham Khanna)§
服务器应用 / 逻辑复制应用程序
添加pg_recvlogical选项 --enable-failover 以指定故障切换槽(Hayato Kuroda)§
还添加选项 --enable-two-phase 作为 --two-phase 的同义词,并弃用后者。
服务器应用 / 逻辑复制应用程序
允许 pg_recvlogical --drop-slot 在没有 --dbname 的情况下工作(Hayato Kuroda)§
源代码
分离注入点的加载和运行(Michael Paquier, Heikki Linnakangas)§ §
现在可以通过 INJECTION_POINT_LOAD() 创建注入点但不运行,并且可以通过 INJECTION_POINT_CACHED() 运行这些注入点。
源代码
支持注入点中的运行时参数(Michael Paquier)§
源代码
允许使用 IS_INJECTION_POINT_ATTACHED() 的内联注入点测试代码(Heikki Linnakangas)§
源代码
使用 x86 AVX-512 指令加速 CRC32C 计算(Raghuveer Devulapalli, Paul Amonson)§
源代码
添加配置选项--with-libnuma以启用NUMA感知功能(Jakub Wartak, Bertrand Drouvot)§ § §
函数pg_numa_available() 报告是否具备NUMA感知能力;系统视图 pg_shmem_allocations_numa 和pg_buffercache_numa 报告共享内存在NUMA节点之间的分布。
源代码
移除列pg_attribute.attcacheoff(David Rowley)§
源代码
将amgettreeheight、amconsistentequality和amconsistentordering添加到索引访问方法API(Mark Dilger)§ §
源代码
添加GiST支持函数stratnum()(Paul A. Jungwirth)§
源代码
在pg_controldata中记录CPU对char类型的默认有符号性(Masahiko Sawada)§
源代码
将最低支持的Python版本更改为3.6.8(Jacob Champion)§
源代码
如果启用LLVM,则要求版本14或更高(Thomas Munro)§
源代码
添加宏PG_MODULE_MAGIC_EXT以允许扩展报告其名称和版本(Andrei Lepikhov)§
此信息可以通过新函数pg_get_loaded_modules()访问。
源代码
文档指出SPI_connect()/SPI_connect_ext()总是返回成功(SPI_OK_CONNECT)(Stepan Neretin)§
错误总是通过ereport()报告。
源代码
移除Meson上Windows构建的实验性标记(Aleksander Alekseev)§
源代码
移除对HPPA/PA-RISC架构的支持(Tom Lane)§
附加模块
添加扩展pg_logicalinspect以检查逻辑快照(Bertrand Drouvot)§
附加模块
添加扩展pg_overexplain,它向EXPLAIN输出添加调试细节(Robert Haas)§
附加模块
向postgres_fdw_get_connections()添加输出列(Hayato Kuroda, Sagar Dilip Shedge)§ § § §
新的输出列used_in_xact指示外部数据包装器是否正在被当前事务使用,closed指示它是否已关闭,user_name指示用户名,remote_backend_pid指示远程后端进程标识符。
附加模块
允许将客户端的SCRAM认证传递给postgres_fdw服务器(Matheus Alcantara, Peter Eisentraut)§
这避免了在数据库中存储postgres_fdw认证信息,并通过postgres_fdw use_scram_passthrough连接选项启用。libpq使用新的连接参数scram_client_key和scram_server_key。
附加模块
添加reject_limit以控制file_fdw可以忽略的无效行数(Atsushi Torikoshi)§
这在ON_ERROR = 'ignore'时激活。
附加模块
向passwordcheck添加可配置变量min_password_length(Emanuele Musella, Maurizio Boriani)§
这控制最小密码长度。
附加模块
添加isn服务器变量weak以控制是否接受无效的校验位(Viktor Holmberg)§
这以前仅由函数isn_weak()控制。
附加模块
允许对值进行排序以加快btree_gist索引的构建(Bernd Helmle, Andrey Borodin)§
附加模块
添加amcheck检查函数gin_index_check()以验证GIN索引(Grigory Kryachko, Heikki Linnakangas, Andrey Borodin)§
附加模块
添加函数pg_buffercache_evict_relation()和pg_buffercache_evict_all()以逐出未钉住的共享缓冲区(Nazir Bilal Yavuz)§
现有函数pg_buffercache_evict()现在返回缓冲区刷新状态。
附加模块 / pg_stat_statements
允许CREATE TABLE AS和DECLARE的查询被pg_stat_statements跟踪(Anthonin Bonnefoy)§
它们现在也被分配了查询ID。
附加模块 / pg_stat_statements
添加pg_stat_statements列以报告并行活动(Guillaume Lelarge)§
新列是 parallel_workers_to_launch 和 parallel_workers_launched。
附加模块 / pg_stat_statements
添加pg_stat_statements.wal_buffers_full以报告满WAL缓冲区(Bertrand Drouvot)§
附加模块 / pgcrypto
添加pgcrypto算法sha256crypt和sha512crypt(Bernd Helmle)§
附加模块 / pgcrypto
添加函数fips_mode()以报告服务器的FIPS模式(Daniel Gustafsson)§
附加模块 / pgcrypto
添加pgcrypto服务器变量builtin_crypto_enabled以允许禁用内置非FIPS模式密码学函数(Daniel Gustafsson, Joe Conway)§
这对于保证FIPS模式行为很有用。
试试其他关键词,或。
对比以 PostgreSQL 发行说明为依据,汇总起始版本之后、目标版本及之前的变更,支持同一大版本内的小版本更新,以及跨大版本升级。跨大版本时,旧分支的维护记录只纳入到下一大版本首次发布之日,所有记录均不晚于目标版本的发布日期。大版本名称(如 18)指首个正式版本(18.0);测试版与开发快照会单独标注。
条目正文来自本站中文手册,版本清单、条目覆盖与提交依据逐一核对上游英文原文。每条变更保留完整说明与原文链接;分类用于辅助浏览,具体影响、适用条件与升级操作请阅读条目正文和各版本的升级说明。
同一修复可能回补到多个版本分支。对比会保守合并可确认相同的条目,并保留各分支完整说明;已知由起始版本包含的修复会排除。一条说明包含多个独立修复时,只有全部已包含才排除。大版本新功能不因与旧版补丁存在提交关联而合并,不能确认相同的条目继续保留。这是发行说明的累计差异,不能覆盖二进制程序之间的每一处代码变化。
CVE 独立依据 PostgreSQL 官方安全公告与漏洞记录计算:起始版本受影响、目标版本已修复或不受影响的漏洞才计入,按编号去重。目标版本仍受影响的漏洞另行提示;安全变更条数与 CVE 数量分别统计。
交互参考 pgversions.com 与 pgversionreport,内容来自 PostgreSQL 发行说明。更多历史资料见发行说明归档。