Postgres是否忽略了pg_hba.conf文件中的“信任”?

时间:2017-07-18 19:39:01

标签: postgresql

我的pg_hba.conf文件中有以下几行:

host    all         all         127.0.0.1/32         trust
host    all         all         ::1/128              trust
host    all         all         localhost            trust

我重新启动了Postgres。当我在命令行连接时,一切都按预期工作:

$ psql -U me -W
Password for user me: # I can type any password and it will work
psql (9.5.7)
Type "help" for help.

me=# 

但是,当我通过软件库(节点库pg,通过库knex)连接时,我收到错误:

password authentication failed for user "me"

我并不是专门寻找修复方法,我只想了解这是怎么回事。如果我只是告诉Postgres信任任何人,我怎么还会收到有关身份验证失败的错误?我的pg_hba.conf条目有问题,或者Postgres在某些情况下只是选择忽略它们,或者.......

修改

如果它帮助我的程序用于连接的数据库连接URL是:postgres://localhost:5432/mydb

1 个答案:

答案 0 :(得分:2)

当您执行psql -U me -h localhost时,psql无法连接,因为它不知道要连接到哪个数据库。

解决方案是psql -U me -h localhost -d database_name

希望这有帮助。