选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档 / 配置参数 / 文件位置

CONFIGURATION PARAMETER文件位置

hba_file

设置服务器的 HBA 配置文件。

Sets the server's "hba" configuration file.

字符串 重启生效 引入 9.0(基线) 现存至 20 devel 0 次默认值变更

类型
字符串string
上下文
重启生效只能在服务器启动时设置,修改后需要重启
默认值
未设置
分类
文件位置
引入版本
9.0(基线)
状态
现存

PostgreSQL 18 手册 官方文档

版本轨迹

相对 PostgreSQL 17 无变化。

默认值变迁

未设置 9.0 – 20

默认值自 PostgreSQL 9.0 起没有变过。带单位的取值换算成了可读形式,原始的 boot_val 与单位写在悬浮提示里。

手册说明

PostgreSQL 18 手册 · 19.2 文件位置 本站手册 官方原文

本版译文与 PostgreSQL 10 完全一致,下面就是同一段文字。

指定基于主机认证配置文件(通常叫pg_hba.conf)。这个参数只能在服务器启动的时候设置。

机制详解

设置服务器的 HBA 配置文件。该值在服务器启动时固定,修改后必须重启。

该路径在服务器启动早期解析,服务账号必须具备正确的目录遍历与文件权限。路径参数是否需要重启,与目标文件内容是否可 reload 是两个不同问题。

应把 hba_file 与 allow_alter_system、config_file、data_directory 一起监控和变更。先在对应角色与真实负载上验证,再按其 postmaster context 选择会话修改、reload 或 restart;历史默认值并不等于当前有效值。

调优建议

按典型负载给出的取值思路,不是放之四海皆准的配方:实际取值要看数据量、并发度与硬件。

  • OLTP在线事务处理

    hba_file 是部署拓扑而非负载调优项。使用绝对路径、最小权限和原子化配置发布,并在重启/重载前由 postgres 服务账号验证可读写性。

  • OLAP分析与批处理

    规则与 OLTP 相同;若数据或配置位于独立挂载点,额外验证启动顺序、备份覆盖和故障切换节点上的路径一致性。

  • 小规格低配实例与开发机

    保持默认同目录布局最简单;只有备份、包管理或权限隔离有明确收益时才拆分路径。

常见问题

  • 服务账号缺少目录遍历、读取或写入权限。
  • 混淆路径参数的重启要求与目标文件内容的 reload 行为。
  • 故障切换节点或备份清单未包含相同路径。
  • 使用相对路径并依赖不稳定的工作目录。

演化历史

相邻两个大版本之间的差异,新的在前。版本号链到该版的快照。

  1. PostgreSQL 20 ← 19 沿用 19

    事实沿用 19

逐版本快照

每个收录版本里的 7 项事实,与上一个存在的版本不同的格子带底色。版本号链到该版。

版本 默认值单位上下文类型最小值最大值枚举值
9.0 未设置 重启生效 字符串
9.1 未设置 重启生效 字符串
9.2 未设置 重启生效 字符串
9.3 未设置 重启生效 字符串
9.4 未设置 重启生效 字符串
9.5 未设置 重启生效 字符串
9.6 未设置 重启生效 字符串
10 未设置 重启生效 字符串
11 未设置 重启生效 字符串
12 未设置 重启生效 字符串
13 未设置 重启生效 字符串
14 未设置 重启生效 字符串
15 未设置 重启生效 字符串
16 未设置 重启生效 字符串
17 未设置 重启生效 字符串
18 未设置 重启生效 字符串
19 未设置 重启生效 字符串
20 沿用 未设置 重启生效 字符串

参考资料

同类参数

参数 类型 上下文 默认值 版本变动 最近变更
File Locations 文件位置 7 个
config_file 字符串 重启生效 未设置
设置服务器主配置文件。 现存
data_directory 字符串 重启生效 未设置
设置服务器数据目录。 现存
extension_destdir 字符串 会话(超级用户) 空字符串
设置加载扩展时要加在路径前的目录。(实测下游 pg_settings 简述。) 于 18 移除
external_pid_file 字符串 重启生效 未设置
将 postmaster PID 写入指定文件。 现存
hba_file 字符串 重启生效 未设置
设置服务器的 HBA 配置文件。 现存
hosts_file 字符串 重启生效 未设置
设置服务器的 hosts 配置文件路径。 现存
ident_file 字符串 重启生效 未设置
设置服务器的 ident 配置文件。 现存