use*_*806 1 passwords postgresql bash
我应该使用用户名和密码从5台远程计算机上的bash脚本执行相同的psql命令.
我已经读过,我们必须在.pgpass文件中传递凭据,并在执行psql命令时使用-w选项.
但是如何使用相同的.pgpass文件在5台机器上执行相同的命令?
您可以在.pgpass文件中添加多个条目,例如
句法:
hostname:port:database:username:password
Run Code Online (Sandbox Code Playgroud)
样本文件:
test.net:5432:testdb:testuser:testpass
test1.net:5432:testdb1:testuser1:testpass1
test2.net:5432:testdb2:testuser2:testpass2
Run Code Online (Sandbox Code Playgroud)
确保.pgpass文件的权限设置为0600
chmod 0600 .pgpass
Run Code Online (Sandbox Code Playgroud)
您还可以使用通配符(例如 *),这对于数据库特别方便。
这意味着对于 pgpassfile 语法:
hostname:port:database:username:password
Run Code Online (Sandbox Code Playgroud)
可以与以下值一起使用:
my-host:5432:*:my-username:my-plaintext-password
Run Code Online (Sandbox Code Playgroud)
使您能够使用相同的凭据连接到服务器上的所有数据库。如果您需要针对特定数据库的不同凭据,请在这一行之前使用更多行。
| 归档时间: |
|
| 查看次数: |
3205 次 |
| 最近记录: |