-2

我安装了 PostgreSQL 12 并使用 Windows 10。我的目标是通过 php 连接到 postgre,因为它不起作用我尝试使用 plsql 但它也不起作用,我总是得到(plsql 和 php 都使用 PDO) :

FATAL: password authentication failed for user "postgres"

在cmd中通过plsql连接

但是,当通过 pgAdmin4 尝试时,我可以连接并访问我的数据库。我首先使用我的 root 密码,然后有时使用我的 postgres 用户密码,所以我确定我的密码有效。

这是我的 pg_hba.conf 文件: pg_hba.conf 文件

我有一个设置为 vua pgAdmin4 的 postgres 密码。

我不明白为什么它会以一种方式而不是另一种方式起作用,有人可以帮助我吗?

4

1 回答 1

0

所以在尝试了几件事之后,我发现plsql和php错误是由于错误的端口被寻址。

默认使用 5432,但由于某种原因,我的配置使用 5433。您可以通过打开 PostgreSQL 12 属性,然后检查连接选项卡在 pgAdmin4 中找到此信息。

要更改 plsql 中使用的端口,我使用了:

psql -U postgres -p 5433

如果您有同样的问题,请通过您配置的端口更改 5433,如果使用 php 的 PDO,您还需要指定端口。

于 2020-08-20T09:57:47.043 回答