Postgresql 9.3忽略pgpass.conf文件

问题描述

使用Windows 10和Postgresql 9.3。

我有一个批处理文件,该文件执行一系列pg_dump命令以备份数据库中的选定表,还有一个相关文件,该文件使用psql将它们还原到空数据库中。对于每次调用pg_dump或psql的操作,我必须输入一个密码。在客户的计算机上(通常是Windows Server的某些版本),我有一个pgpass.conf文件来指定密码,而不必每次都输入密码。

我的pgpass.conf文件包含localhost:5432:*:someuser:somepassword。我尝试将其放入%APPDATA%/postresql中,并将其放入名为c:\misc文件夹中,并创建一个名为PGPASSFILE的环境变量,其中包含c:\misc\pgpass.conf。更改每个服务后,我重新启动了Postgresql服务。

我想念什么?

解决方法

恐怕这是一个无法回答的问题。

我认为我应该尝试使用受支持的PostgreSQL版本,因此我安装了9.6。我为它分配了端口5435。我在我的PGPASSFILE环境变量指向的文件中添加了相应的行。有效。我尝试定位9.3数据库。它仍然有效。我删除了端口5435的线路。它仍然有效。我将pgpass.conf文件复制到默认的%appdata%/ postgresql文件夹中,删除了PGPASSFILE,它仍然有效!

所以,我不知道发生了什么问题,也不清楚修复了什么,但是已经修复了。