我已经在我的Ubuntu karma box上安装了PostgreSQL和pgAdminIII。
我能够成功地使用pgAdminIII(即连接/登录),但是当我尝试在命令行(使用psql)上使用相同的用户名/pwd登录到服务器时,我得到错误:
psql: FATAL: Ident authentication failed for user "postgres"
现在有人知道如何解决这个问题吗?
我已经在我的Ubuntu karma box上安装了PostgreSQL和pgAdminIII。
我能够成功地使用pgAdminIII(即连接/登录),但是当我尝试在命令行(使用psql)上使用相同的用户名/pwd登录到服务器时,我得到错误:
psql: FATAL: Ident authentication failed for user "postgres"
现在有人知道如何解决这个问题吗?
当前回答
对于fedora26和postgres9.6
首先,以root用户登录,然后通过以下命令进入psql
$ su postgres
then
$ psql
在PSQL中查找hba_file ==>的位置意味着pg_hba.conf
postgres=# show hba_file ;
hba_file
--------------------------------------
/etc/postgresql/9.6/main/pg_hba.conf
(1 row)
在pg_hba.conf文件中将用户访问权限更改为this
host all all 127.0.0.1/32 md5
其他回答
我发现我必须安装一个身份服务器,在113端口上监听。
sudo apt-get install pidentd
sudo service postgresql restart
然后身份就起作用了。
这招对我很管用: http://tecadmin.net/fatal-ident-authentication-failed-for-user-postgres/#
local all postgres trust
local all myapp_usr trust
# IPv4 local connections:
host all all 127.0.0.1/32 trust
# IPv6 local connections:
#host all all ::1/128 trust
如果你在CentOS上使用它,你可能需要在做出上述解决方案后重新加载postgres:
systemctl restart postgresql-9.3.service
我在GCP SQL中通过terraform提供了用户名和密码,问题是密码没有通过terraform正确设置,所以虽然不是一个适当的修复,但只是为了找出确切的原因。
我从GCP控制台更改了用户的密码,这是有效的。
在pg_hba.conf中设置正确了吗?
参见https://ubuntu.com/server/docs/databases-postgresql如何做。