多个用户的 .pgpass 文件
.pgpass file for more than one user
如果我将 PGPASSFILE
设置为像 /home/user/.pgpass
这样的显式路径,那么它可以正常工作,当以拥有该文件的用户身份登录时,我可以使用 psql
作为条目.pgpass.conf
.
我遇到的问题是我需要让多个帐户使用 psql。如果我将 PGPASSFILE
更改为 ~/.pgpass.conf
之类的用户目录,那么它将不起作用并且不会读取文件,因此它会给出密码错误。
因为我只能指定一个文件,这意味着只有该文件的所有者才能 运行 我需要的命令 运行。
我 运行 正在 Ubuntu 18.04,我需要 root 和 www-data 才能有一个 .pgpass.conf
文件。
我该怎么做?
如果您有 system 用户对应于您的 db 用户(root
和 www-data
),每个在其各自的主目录中都有自己单独的 .pgpass
文件。相应地设置每个。
并且根本不设置PGPASSFILE
。 The manual:
PGPASSFILE
behaves the same as the passfile connection parameter.
passfile
Specifies the name of the file used to store passwords (see Section 33.15). Defaults to ~/.pgpass
, or
%APPDATA%\postgresql\pgpass.conf
on Microsoft Windows. (No error is
reported if this file does not exist.)
相关:
- Run batch file with psql command without password
如果我将 PGPASSFILE
设置为像 /home/user/.pgpass
这样的显式路径,那么它可以正常工作,当以拥有该文件的用户身份登录时,我可以使用 psql
作为条目.pgpass.conf
.
我遇到的问题是我需要让多个帐户使用 psql。如果我将 PGPASSFILE
更改为 ~/.pgpass.conf
之类的用户目录,那么它将不起作用并且不会读取文件,因此它会给出密码错误。
因为我只能指定一个文件,这意味着只有该文件的所有者才能 运行 我需要的命令 运行。
我 运行 正在 Ubuntu 18.04,我需要 root 和 www-data 才能有一个 .pgpass.conf
文件。
我该怎么做?
如果您有 system 用户对应于您的 db 用户(root
和 www-data
),每个在其各自的主目录中都有自己单独的 .pgpass
文件。相应地设置每个。
并且根本不设置PGPASSFILE
。 The manual:
PGPASSFILE
behaves the same as the passfile connection parameter.
passfile
Specifies the name of the file used to store passwords (see Section 33.15). Defaults to
~/.pgpass
, or%APPDATA%\postgresql\pgpass.conf
on Microsoft Windows. (No error is reported if this file does not exist.)
相关:
- Run batch file with psql command without password