20.3. 认证问题

真正的认证失败以及相关的问题通常由类似下面的错误信息表白自身。

FATAL:  no pg_hba.conf entry for host "123.123.123.123", user "andym", database "testdb"

这条信息出现的最大可能是你已经联接了服务器,但她不愿意和你说话。 就象信息自己表示的那样,服务器拒绝了联接请求,因为她没有在她的 pg_hba.conf 配置文件里找到匹配的记录。

Password authentication failed for user 'andym'

这样的信息表示你联接了服务器,并且她也愿意和你交谈, 但是你必须通过pg_hba.conf 文件里声明的认证方法。 检查你提交的口令,或者如果错误信息提到这些 Kerberos 或 IDENT 认证类型时检查你的这些软件。

FATAL 1:  user "andym" does not exist

这是表示此用户不存在的另一方法。

FATAL 1:  Database "testdb" does not exist

你试图联接的数据库不存在。请注意如果你没有声明数据库名,缺省是数据库用户名,这可能正确也可能不正确。

请注意服务器日志可能包含比报告给客户端的更多的有关认证失败的信息。如果你被失败的原因搞糊涂了,那么请检查日志。