首页 > 解决方案 > Kong 无法连接到 PostgreSQL

问题描述

我没有使用 Docker。

我已经安装了 PostgreSQL 11 并创建了一个kong拥有数据库的用户kong在我安装了 Kong 的同一个 linux 机器上,我正在尝试使用这些说明让它连接到数据库。

这是来自 kong.conf 的片段:

database = postgres
pg_host = 127.0.0.1
pg_port = 5432
pg_timeout = 5000
pg_user = kong
pg_password = Passw0rd!
pg_database = kong

另外,根据这个,我修改了 pg_hba.conf 以包括:

# TYPE  DATABASE        USER            ADDRESS                 METHOD
local   all             all                                     trust
host    all             all             127.0.0.1/32            trust

不过,当我这样做时:

kong migrations bootstrap -c /etc/kong/kong.conf

我得到:

Error: [PostgreSQL error] failed to retrieve server_version_num: FATAL: Ident authentication failed for user "kong"

我确保 PostgreSQLkong在 kong.conf 中具有相同的密码。

我错过了什么?

标签: postgresqlrhel7kong

解决方案


得到它的工作。两件事情:

  1. 在 @DanielVérité 关于Server Fault的建议下,我将我的信任方法移到了 pg_hba.conf 的顶部。这是因为他指出第一个匹配是 PostgreSQL 所使用的。

  2. 在 kong.conf 中,我以为我指定pg_host = 127.0.0.1了 ,但实际上我将主机名放在那里。将其改回,127.0.0.1现在可以使用。

我希望这对未来的人有所帮助。


推荐阅读