.pgpass 文件未将默认用户名设置为连接

Jas*_*enX 2 postgresql debian

(Debian 8)

我的 .pgpass 文件在我的主文件夹(管理员)

我并使用文档中指示的正确格式

hostname:port:database:username:password
Run Code Online (Sandbox Code Playgroud)

当明确地放入psql命令行时,我放在那里的相同字段工作得很好。(当然我必须手动输入密码)。

但是,单独运行 psql 会给我们一个错误:

psql: FATAL: role "admin" does not exist
Run Code Online (Sandbox Code Playgroud)

请注意,我的 postgres 用户名不是“admin”,这是我的 debian 用户名。

我究竟做错了什么?我的目标是psql无需使用复杂的命令行(包括主机/端口/用户名/数据库)即可访问

Cra*_*ger 6

psql 连接时默认使用您当前的 unix 用户名,除非您指定不同的内容。

如果你想要一个不同的默认值,你可以设置PGUSER环境变量。

/sf/ask/1234259491/

.pgpasspsql查找给定主机、用户名、端口等组合的密码。它不指定要使用的连接,只指定用于给定连接的密码。

您可以使用环境变量、服务文件和/或 shell 别名来指定连接默认值。