20.15. 预置选项

下列参数是只读的。 同样,它们被排除在postgresql.conf文件例子之外。 这些选项报告特定应用可能感兴趣的多种PostgreSQL行为,特别是管理前端相关的行为。 所有这些都是在PostgreSQL被编译或者它被安装时决定的。

block_size (integer)

报告一个磁盘块的大小。它由编译服务器时BLCKSZ的值确定。默认值是 8192 字节。有些配置变量的含义(例如shared_buffers)会被block_size影响。详见第 20.4 节

data_checksums (boolean)

报告对这个集簇是否启用了数据校验码。详见data checksums

data_directory_mode (integer)

在Unix系统上,这个参数报告启动时的数据目录(由data_directory定义)的权限。 (在Microsoft Windows上这个参数将总是显示0700。) 更多信息请参考group access

debug_assertions (boolean)

报告编译PostgreSQL时是否启用了断言。 如果PostgreSQL被编译时定义了宏 USE_ASSERT_CHECKING is defined when PostgreSQL(例如通过 configure选项 --enable-cassert定义),那么会报告已启用。默认情况下 PostgreSQL编译时没有用断言。

integer_datetimes (boolean)

报告PostgreSQL是否在编译时打开了 64 位整数日期和时间。从PostgreSQL 10起,这个值总是on

in_hot_standby (boolean)

报告服务器当前是否处于热备模式。 当这个是on的时候,所有的事务强制为只读。 在会话中,这个只能在服务器提升为主服务器的时候变更。 更多信息参见第 27.4 节

lc_collate (string)

报告文本数据排序使用的区域。详见第 24.1 节。该值是在数据库被创建时确定的。

lc_ctype (string)

报告决定字符分类的区域。详见第 24.1 节。该值是在数据库被创建时决定的。通常它和lc_collate一样,但是可以为特殊应用设置成不同的值。

max_function_args (integer)

报告函数参数的最大数量。它由编译服务器时的FUNC_MAX_ARGS值决定的。默认值是 100 个参数。

max_identifier_length (integer)

报告标识符的最大长度。它由编译服务器时的NAMEDATALEN值减一决定。NAMEDATALEN的默认值是 64 ;因此max_identifier_length的默认值是 63,但是在使用多字节编码时可以少于 63 个字符。

max_index_keys (integer)

报告索引键的最大数目。它由编译服务器时的INDEX_MAX_KEYS值决定。默认值是 32 个键。

segment_size (integer)

报告一个文件段中可以存储的块(页)的数量。由编译服务器时的RELSEG_SIZE值决定。一个段文件的最大尺寸(以字节计)等于segment_size乘以block_size,默认是 1GB。

server_encoding (string)

报告数据库的编码(字符集)。这是在数据库被创建时决定的。通常,客户端只需要关心client_encoding的值。

server_version (string)

报告服务器版本数值。它是由编译服务器时的PG_VERSION值决定的。

server_version_num (integer)

报告服务器版本数值的整数值。它是由编译服务器时的PG_VERSION_NUM值决定的。

ssl_library (string)

报告此PostgreSQL服务器已构建的 SSL 库的名称(即使此实例当前未配置或使用 SSL), 例如OpenSSL,或一个空字符串(如果没有)。

wal_block_size (integer)

报告一个 WAL 磁盘块的尺寸。由编译服务器时的XLOG_BLCKSZ值决定。默认是 8192 字节。

wal_segment_size (integer)

报告 WAL 段文件的大小。默认是 16MB。详见第 30.5 节