hot_standby 是一个 配置参数,用于确定是否允许在备用服务器上运行查询。
hot_standby 在 PostgreSQL 9.0 中被添加。
默认值
默认情况下,hot_standby 的值为:
PostgreSQL 10 及更高版本:onPostgreSQL 9.0 ~ 9.6:off
用法
如果将 hot_standby 设置为 on,则允许对备用服务器进行只读连接。(PostgreSQL 10 及更高版本)ready 中的状态报告在 postmaster.pid。
如果将 hot_standby 设置为 off,则连接到备用服务器将失败,例如:
$ psql -d postgres -U postgres psql: error: FATAL: the database system is not accepting connections DETAIL: Hot standby mode is disabled.
并在日志文件中会有一条相应的记录。
[2021-05-17 07:27:23 UTC] [unknown] postgres postgres FATAL: 57P03: the database system is not accepting connections [2021-05-17 07:27:23 UTC] [unknown] postgres postgres DETAIL: Hot standby mode is disabled.
(PostgreSQL 10 及更高版本)standby 中的状态报告在 postmaster.pid。
请注意,当在未处于恢复模式的服务器上运行时,hot_standby 没有效果。
按 PostgreSQL 版本详细信息
hot_standby (PostgreSQL 19)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 18)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 17)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 16)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 15)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 14)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 13)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 12)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 11)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 10)
| 设置 | 开启 |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | 开启 |
| 重置值 | 开启 |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 9.6)
| 设置 | off |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 9.5)
| 设置 | off |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 | |
| 需要重启 | false |
文档:hot_standby
hot_standby (PostgreSQL 9.4)
| 设置 | off |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 |
文档:hot_standby
hot_standby (PostgreSQL 9.3)
| 设置 | off |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 |
文档:hot_standby
hot_standby (PostgreSQL 9.2)
| 设置 | off |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 |
文档:hot_standby
hot_standby (PostgreSQL 9.1)
| 设置 | off |
| 单位 | |
| 类别 | 复制 / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 |
文档:hot_standby
hot_standby (PostgreSQL 9.0)
| 设置 | off |
| 单位 | |
| 类别 | Write-Ahead Log / 备用服务器 |
| 简短描述 | 允许在恢复期间进行连接和查询。 |
| 扩展描述 | |
| 上下文 | postmaster |
| 变量类型 | bool |
| 来源 | 默认 |
| 最小值 | |
| 最大值 | |
| 枚举值 | |
| 启动值 | off |
| 重置值 | off |
| 源文件 | |
| 源行 |
文档:hot_standby
变更历史
- PostgreSQL 10
- 默认值从
off更改为on(commit 34fc6167)
- 默认值从
- PostgreSQL 9.0
参考资料
- PostgreSQL 文档: hot_standby
另请参阅
wal_level, hot_standby_feedback, in_hot_standby
