psql:严重错误:主机“[local]”、用户“root”、数据库“root”没有 pg_hba.conf 条目,SSL 已关闭

psql:严重错误:主机“[local]”、用户“root”、数据库“root”没有 pg_hba.conf 条目,SSL 已关闭

在我们的 Linux 服务器上,我们有 PostgreSQL DB

当我们输入 -

psql -l

我们得到

psql: FATAL:  no pg_hba.conf entry for host "[local]", user "root", database "postgres", SSL off

为了解决这个问题,我们需要在 /var/lib/pgsql/data/pg_hba.conf 中设置什么?

答案1

要列出数据库,您可以以postgres用户身份执行命令:

$ sudo su postgres -c 'psql -l'

如果您已经以 root 身份登录,则可以sudo从上述命令中删除。用户postgres被视为 PostgreSQL 数据库引擎的 root 用户。

您的帖子中显示的错误表明用户无权root访问localhost数据库postgres。因此,您可以编辑pg_hba.conf文件以包含所需的登录详细信息,如登录名、数据库名称和主机。该文件有详尽的文档。

对于您的情况,您可以将以下行添加到pg_hba.conf文件:

local   all       root           peer

保存更改后,您需要重新加载 postgresql 服务器。

相关内容