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

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

受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
测试与开发版本: 19 / devel
不受支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0
历史版本PostgreSQL 9.6 已于 2021 年 11 月结束社区维护,本页译文保留供仍在使用旧版本的读者参考。新系统请看当前版本

32.15. 密码文件 #

用户主目录中的.pgpass文件或PGPASSFILE引用的文件可保存密码,供连接需要密码且尚未通过其他方式指定密码时使用。在 Microsoft Windows 上,文件名为%APPDATA%\postgresql\pgpass.conf(其中%APPDATA%指用户配置文件中的应用数据子目录)。

该文件中的行应采用以下格式:

hostname:port:database:username:password

(可以复制上面这一行,并在行首加上#,在文件中加入提示注释。)前四个字段中的每一个都可以是字面值,或者是*,后者可以匹配任何内容。将使用与当前连接参数匹配的第一行中的密码字段。(因此,使用通配符时,应将更具体的条目放在前面。)如果条目需要包含:\,请使用\转义该字符。主机名localhost同时匹配来自本地机器的 TCP 连接(主机名localhost)和 Unix 域套接字连接(pghost为空或为默认套接字目录)。在备库中,数据库字段为replication时,匹配连接到主库的流复制连接。除此之外,database字段的用途有限,因为同一用户在同一数据库集簇的所有数据库中使用相同的密码。

在 Unix 系统上,.pgpass文件上的权限必须不允许所有人或组内访问,可以用chmod 0600 ~/.pgpass这样的命令实现。如果权限没有这么严格,该文件将被忽略。在微软 Windows 上,该文件被假定存储在一个安全的目录中,因此不会进行特别的权限检查。

提交更正

译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。