加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Postgres错误消息:致命:用户“…”的身份验证失败

发布时间:2020-12-13 18:07:53 所属栏目:Linux 来源:网络整理
导读:假设您看到此消息: FATAL: Ident authentication failed for user "..." 导致此错误消息的原因是什么? 解决方法 这意味着Postgres正在尝试使用Ident协议对用户进行身份验证,而不是. Ident auth的工作原理如下: 数据库’db’上有数据库角色’foo’ 您的pg_
假设您看到此消息:
FATAL:  Ident authentication failed for user "..."

导致此错误消息的原因是什么?

解决方法

这意味着Postgres正在尝试使用Ident协议对用户进行身份验证,而不是. Ident auth的工作原理如下:

>数据库’db’上有数据库角色’foo’
>您的pg_hba.conf文件(在/ etc / postgres-something / main中)将’Ident’定义为连接到数据库db的协议,用于从某些主机连接的用户
>建立连接的unix用户名是’foo’
>在用户连接的机器上运行的Ident服务器确认其用户名确实是’foo’

可能的原因和解决方案

>您尝试连接的计算机上没有运行Ident服务器.通过尝试在端口113上连接它来测试它.如果失败,请安装Ident服务器(例如,sudo apt-get install oidentd).
>有一个Ident服务器,但没有数据库角色匹配您尝试连接的名称(上例中的’foo’).因此,通过以某种方式连接到具有超级用户权限的数据库来创建它,并执行CREATE ROLE foo.或者在/etc/postgresql/…/main/pg_ident.conf中添加一个条目.
>也许shell用户名与数据库角色不匹配.通过在连接进行时连接到Ident服务器并传递正确的端口号,您可以获得may be able to test this.
>也许你真的想用密码连接,而不是用身份证.适当地编辑pg_hba.conf文件.例如,更改:

host all all 127.0.0.1/32 ident

host all all 127.0.0.1/32 md5

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读