我有一台正在运行 postgreSQL 的服务器。几天前,我对其进行了设置,以便可以从家用电脑远程访问数据库,并且成功了(基于本指南:http://www.cyberciti.biz/tips/postgres-allow-remote-access-tcp-connection.html)。现在我注意到,无论出于什么原因,我无法通过 localhost 或 127.0.0.1 访问数据库。
psql mydatabase
没有任何问题。psql -h myDomain.net mydatabase
也能工作。psql -h localhost mydatabase
告诉我
psql: FATAL: Ident authentication failed for user "smaug"
我尝试恢复之前所做的更改以获取对数据库的远程访问,但没有成功。
造成这个问题的原因可能是什么?
答案1
好的,我找到了问题所在。转到文件/var/lib/pgsql/data/pg_hba.conf
,查找行
host all all 127.0.0.1/32 ident
并替换ident
为trust
显然解决了该问题。
答案2
然后您应该添加host all all 127.0.0.1/32 md5
到您的pg_hba.conf
PostgreSQL 服务并重新加载。