求助:获取PostgreSQL默认pg_hba.conf配置文件
嗨,别慌!不用重装PostgreSQL就能解决这个问题,我给你整理了几个常见PostgreSQL版本的默认pg_hba.conf配置,还附带了几个自己找回默认配置的实用方法,帮你快速恢复:
PostgreSQL 常见版本默认 pg_hba.conf 配置
PostgreSQL 15 及以上版本
这个版本默认使用更安全的scram-sha-256认证方式:
# TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all scram-sha-256 # IPv4 local connections: host all all 127.0.0.1/32 scram-sha-256 # IPv6 local connections: host all all ::1/128 scram-sha-256 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all scram-sha-256 host replication all 127.0.0.1/32 scram-sha-256 host replication all ::1/128 scram-sha-256
PostgreSQL 12-14 版本
这几个版本默认使用md5认证:
# TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all md5 # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all md5 host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5
PostgreSQL 9.x-11 版本
早期版本本地连接默认用peer认证(匹配系统用户名),远程用md5:
# TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all peer # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 md5 # Allow replication connections from localhost, by a user with the # replication privilege. local replication all peer host replication all 127.0.0.1/32 md5 host replication all ::1/128 md5
自己获取对应版本默认配置的实用方法
如果上面的版本不匹配,你可以用这两个方法精准获取你当前PG版本的默认配置:
- 查找系统自带示例文件:大部分Linux发行版会在PostgreSQL安装目录下保留示例配置,路径通常是
/usr/share/postgresql/<你的PG版本号>/pg_hba.conf.sample。比如你用PG13,就复制/usr/share/postgresql/13/pg_hba.conf.sample到你的数据目录(一般是/var/lib/postgresql/13/main/),重命名为pg_hba.conf即可。 - 临时初始化测试实例:打开终端执行
initdb -D /tmp/temporary_pg_data,这个命令会在临时目录生成一套全新的默认配置,其中就包含你需要的pg_hba.conf。复制完后直接删除临时目录rm -rf /tmp/temporary_pg_data,完全不会影响现有数据库。
内容的提问来源于stack exchange,提问作者fcpihtr
相关产品推荐
相关产品推荐

