![如何在 pgpass.conf 中为 Windows Server 2008 上的管理员帐户设置 postgresql 密码?](https://linux22.com/image/596688/%E5%A6%82%E4%BD%95%E5%9C%A8%20pgpass.conf%20%E4%B8%AD%E4%B8%BA%20Windows%20Server%202008%20%E4%B8%8A%E7%9A%84%E7%AE%A1%E7%90%86%E5%91%98%E5%B8%90%E6%88%B7%E8%AE%BE%E7%BD%AE%20postgresql%20%E5%AF%86%E7%A0%81%EF%BC%9F.png)
我有一个 pgpass.conf 文件,它对我的默认用户来说运行良好。它位于C:/Users/myuser/AppData/Roaming/postgresql/pgpass.conf
。它的内容如下;
localhost:5432:*:postgres:password1
我有一个在管理员帐户下运行的进程。当我whoami
在此进程下运行时,我得到了nt authority/system
。我希望能够从此进程访问数据库,但它卡住了,因为它需要密码。我尝试将上面的 pgpass.conf 放入C:/Users/Administrator/AppData/postgresql/pgpass.conf
,C:/Users/Administrator/AppData/Roaming/postgresql/pgpass.conf
但它不起作用。这是该文件的正确位置吗?我甚至可以以管理员身份执行此操作吗?不幸的是,我无法更改此进程在其下运行的用户。
答案1
答案2
如果有人要使用 PowerShell,则使用:$env:APPDATA
。这将发现 Windows Server 2016 中用于 MS SQL Server 2017 代理作业的 AppData 文件夹,其中包含 PowerShell 子系统(类型),如下所示:需要C:\Users\SQLSERVERAGENT\AppData\Roaming
在其中创建文件夹并从用户位置复制文件。\postgresql
pgpass.conf