.pgpass 文件未设置默认用户名以进行连接

.pgpass 文件未设置默认用户名以进行连接

(Debian 8)

我的 .pgpass 文件位于我的主文件夹 (admin)

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

hostname:port:database:username:password

当我将相同的字段明确地放入psql命令行时,它们可以很好地工作。(当然,我必须手动输入密码)。

但是,单独运行 psql 会出现错误:

psql: FATAL: role "admin" does not exist

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

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

答案1

psql默认在连接时使用您当前的 unix 用户名,除非您指定其他用户名。

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

https://stackoverflow.com/q/17632278/398670

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

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

相关内容