CONFIGURATION PARAMETER预置选项
server_version_num
以整数形式显示服务器版本。
Shows the server version as an integer.
整数 内部 引入 9.0(基线) 现存至 20 devel 16 次默认值变更
- 类型
- 整数integer
- 上下文
- 内部由编译或 initdb 决定,运行时不能修改
- 默认值
180006- 取值范围
180006 – 180006- 分类
- 预置选项
- 引入版本
- 9.0(基线)
- 状态
- 现存
版本轨迹
相对 PostgreSQL 17:默认值由 170011 改为 180006,最小值由 170011 改为 180006,最大值由 170011 改为 180006。
默认值变迁
默认值一共换过 17 档,每段的宽度按它覆盖的大版本数伸展,深色的一段是当前查看的 PostgreSQL 18。带单位的取值换算成了可读形式,原始的 boot_val 与单位写在悬浮提示里。
手册说明
本版译文与 PostgreSQL 10 完全一致,下面就是同一段文字。
报告服务器版本数值的整数值。它是由编译服务器时的PG_VERSION_NUM值决定的。
机制详解
以整数报告当前服务器二进制版本。它是 internal/只读值,由二进制决定,与 initdb 或建库无关。
在本项目实测的 PG9.0–19 Beta 3 中,该整数编码大版本与小版本更新,软件可据此做数值比较,无需解析 server_version 的发行商文字。
只有无法直接探测服务端能力时才用它做兼容 gating。扩展与客户端仍需考虑不改变上游版本号的发行商 backport。
调优建议
按典型负载给出的取值思路,不是放之四海皆准的配方:实际取值要看数据量、并发度与硬件。
-
OLTP在线事务处理
不可调。升级后记录每个服务器的值,并在部署检查中做数值比较;改变它意味着运行不同 PostgreSQL 二进制。
-
OLAP分析与批处理
启用版本专属 SQL 或优化器功能前,核对协调节点、worker、副本与扩展构建对应的真实服务器版本。
-
小规格低配实例与开发机
可用该值做简单兼容检查,但优先直接探测所需能力;不要尝试通过配置或 initdb 修改。
常见问题
- 把整数当字符串比较。
- 尝试通过配置或重建数据库修改。
- 误以为该数值包含发行商 backport 与下游补丁信息。
- 用客户端库版本替代所连接服务器版本。
演化历史
相邻两个大版本之间的差异,新的在前。版本号链到该版的快照。
-
PostgreSQL 20 ← 19 沿用 19
事实沿用 19
-
PostgreSQL 19 ← 18 默认值变更
默认值
180006190000最小值180006190000最大值180006190000 -
PostgreSQL 18 ← 17 默认值变更
默认值
170011180006最小值170011180006最大值170011180006 -
PostgreSQL 17 ← 16 默认值变更
默认值
160015170011最小值160015170011最大值160015170011 -
PostgreSQL 16 ← 15 默认值变更
默认值
150019160015最小值150019160015最大值150019160015 -
PostgreSQL 15 ← 14 默认值变更
默认值
140024150019最小值140024150019最大值140024150019 -
PostgreSQL 14 ← 13 默认值变更
默认值
130023140024最小值130023140024最大值130023140024 -
PostgreSQL 13 ← 12 默认值变更
默认值
120022130023最小值120022130023最大值120022130023 -
PostgreSQL 12 ← 11 默认值变更
默认值
110022120022最小值110022120022最大值110022120022 -
PostgreSQL 11 ← 10 默认值变更
默认值
100023110022最小值100023110022最大值100023110022 -
PostgreSQL 10 ← 9.6 默认值变更
默认值
90624100023最小值90624100023最大值90624100023 -
PostgreSQL 9.6 ← 9.5 默认值变更
默认值
9052590624最小值9052590624最大值9052590624 -
PostgreSQL 9.5 ← 9.4 默认值变更
默认值
9042690525最小值9042690525最大值9042690525 -
PostgreSQL 9.4 ← 9.3 默认值变更
默认值
9032590426最小值9032590426最大值9032590426 -
PostgreSQL 9.3 ← 9.2 默认值变更
默认值
9022390325最小值9022390325最大值9022390325 -
PostgreSQL 9.2 ← 9.1 默认值变更
默认值
9012490223最小值9012490223最大值9012490223 -
PostgreSQL 9.1 ← 9.0 默认值变更
默认值
9002390124最小值9002390124最大值9002390124
逐版本快照
每个收录版本里的 7 项事实,与上一个存在的版本不同的格子带底色。版本号链到该版。
| 版本 | 默认值 | 单位 | 上下文 | 类型 | 最小值 | 最大值 | 枚举值 |
|---|---|---|---|---|---|---|---|
| 9.0 | 90023 |
空 |
内部 |
整数 |
90023 |
90023 |
— |
| 9.1 | 90124 |
空 |
内部 |
整数 |
90124 |
90124 |
— |
| 9.2 | 90223 |
空 |
内部 |
整数 |
90223 |
90223 |
— |
| 9.3 | 90325 |
空 |
内部 |
整数 |
90325 |
90325 |
— |
| 9.4 | 90426 |
空 |
内部 |
整数 |
90426 |
90426 |
— |
| 9.5 | 90525 |
— |
内部 |
整数 |
90525 |
90525 |
— |
| 9.6 | 90624 |
— |
内部 |
整数 |
90624 |
90624 |
— |
| 10 | 100023 |
— |
内部 |
整数 |
100023 |
100023 |
— |
| 11 | 110022 |
— |
内部 |
整数 |
110022 |
110022 |
— |
| 12 | 120022 |
— |
内部 |
整数 |
120022 |
120022 |
— |
| 13 | 130023 |
— |
内部 |
整数 |
130023 |
130023 |
— |
| 14 | 140024 |
— |
内部 |
整数 |
140024 |
140024 |
— |
| 15 | 150019 |
— |
内部 |
整数 |
150019 |
150019 |
— |
| 16 | 160015 |
— |
内部 |
整数 |
160015 |
160015 |
— |
| 17 | 170011 |
— |
内部 |
整数 |
170011 |
170011 |
— |
| 18 | 180006 |
— |
内部 |
整数 |
180006 |
180006 |
— |
| 19 | 190000 |
— |
内部 |
整数 |
190000 |
190000 |
— |
| 20 沿用 | 190000 |
— |
内部 |
整数 |
190000 |
190000 |
— |
参考资料
同类参数
| 参数 | 类型 | 上下文 | 默认值 | 版本变动 | 最近变更 |
|---|---|---|---|---|---|
block_size |
整数 | 内部 | 8192 |
— | |
| 显示磁盘页块大小。 | 现存 | ||||
data_checksums |
布尔 | 内部 | off |
191 次 | |
| 显示该集群是否启用了数据校验和。 | 现存 | ||||
data_directory_mode |
整数 | 内部 | 448 |
— | |
| 显示数据目录的权限模式。 | 现存 | ||||
debug_assertions |
布尔 | 内部 | off |
9.51 次 | |
| 显示运行中的服务器是否启用了断言检查。 | 现存 | ||||
debug_exec_backend |
布尔 | 内部 | off |
— | |
| 显示运行中的服务器是否启用了 EXEC_BACKEND 构建选项。 | 现存 | ||||
effective_wal_level |
枚举 | 内部 | replica |
— | |
| 显示系统当前实际生效的 WAL 级别。 | 现存 | ||||
huge_pages_status |
枚举 | 内部 | unknown |
— | |
| 显示大页的使用状态。 | 现存 | ||||
in_hot_standby |
布尔 | 内部 | off |
— | |
| 显示当前是否处于 hot standby 状态。 | 现存 | ||||
integer_datetimes |
布尔 | 内部 | on |
— | |
| 显示日期时间是否采用整数表示。 | 现存 | ||||
lc_collate |
字符串 | 内部 | C |
— | |
| 显示排序规则所使用的区域设置。 | 于 16 移除 | ||||
lc_ctype |
字符串 | 内部 | C |
— | |
| 显示字符分类与大小写转换所使用的区域设置。 | 于 16 移除 | ||||
max_function_args |
整数 | 内部 | 100 |
— | |
| 显示函数参数数量上限。 | 现存 | ||||
max_identifier_length |
整数 | 内部 | 63 |
— | |
| 显示标识符长度上限。 | 现存 | ||||
max_index_keys |
整数 | 内部 | 32 |
— | |
| 显示索引键数量上限。 | 现存 | ||||
num_os_semaphores |
整数 | 内部 | 0 |
— | |
| 显示服务器所需的操作系统信号量数量。 | 现存 | ||||
segment_size |
整数 | 内部 | 1 GiB (131072 × 8kB) |
— | |
| 显示每个磁盘文件所含的页数。 | 现存 | ||||
server_encoding |
字符串 | 内部 | SQL_ASCII |
— | |
| 显示服务器(数据库)字符集编码。 | 现存 | ||||
server_version |
字符串 | 内部 | 18.6 (Debian 18.6-1.pgdg13+2) |
1916 次 | |
| 显示服务器版本。 | 现存 | ||||
server_version_num |
整数 | 内部 | 180006 |
1916 次 | |
| 以整数形式显示服务器版本。 | 现存 | ||||
shared_memory_size |
整数 | 内部 | 0 B |
— | |
| 显示服务器主共享内存区的大小(向上取整到 MB)。 | 现存 | ||||
shared_memory_size_in_huge_pages |
整数 | 内部 | -1 |
— | |
| 显示主共享内存区所需的大页数量。 | 现存 | ||||
ssl_library |
字符串 | 内部 | OpenSSL |
— | |
| 显示 SSL 库的名称。 | 现存 | ||||
wal_block_size |
整数 | 内部 | 8192 |
— | |
| 显示预写日志块大小。 | 现存 | ||||
wal_segment_size |
整数 | 内部 | 16 MiB |
111 次 | |
| 显示预写日志段文件大小。 | 现存 | ||||