postgresql – Postgres密码认证失败

前端之家收集整理的这篇文章主要介绍了postgresql – Postgres密码认证失败前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图用Postgres用户从我的Windows机器登录到我的服务器与Pgadmin。

但它不断给我这个错误

psql: FATAL:  password authentication Failed for user "postgres"

所以,然后我试图从命令行与psql登录,这给了我一样的错误。然后在将本地条目放在pg_hba.conf中以后,使用psql将密码重置为“test”。然后我把条目放回md5,并尝试使用密码’test’登录

在psql中我使用了这些命令:

ALTER ROLE postgres WITH PASSWORD 'test';
ALTER ROLE postgres PASSWORD 'test';
ALTER USER postgres WITH PASSWORD 'test';
ALTER USER postgres PASSWORD 'test';

和这个特殊的psql命令

\password

每次,我返回pg_hba.conf本地条目到md5,并尝试使用psql登录

psql -U postgres

然后我要求输入密码。进入’test’后,psql给我和前面提到的相同的错误

当然,我在每次更改pg_hba文件后重新启动postgresql。我使用psql与’su postgres’。

所以,即使我能够通过通常的方式更改密码,它不被接受为密码。

我希望有人能够帮助我这个。

一些信息:

Postgresql 9.1
Ubuntu 12.04

Pg_hba文件(请求)

local   all             postgres                                md5

local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

host    all             all             <my-ip-address>/32        md5

当我想修改密码时,我将顶部md5更改为信任。
我想提到这个配置以前工作没有问题。

结果

sudo -u postgres psql -x -c "select * from pg_user where usename='postgres'"

是:

usename     | postgres
usesysid    | 10
usecreatedb | t
usesuper    | t
usecatupd   | t
userepl     | t
passwd      | ********
valuntil    | 1970-01-01 00:00:00+01
useconfig   |
如最新编辑所示,密码有效期至1970年,这意味着它目前无效。
这解释了与密码不正确的错误消息相同。

重置有效性:

ALTER USER postgres VALID UNTIL 'infinity';

在最近的一个问题中,另一个用户用户帐户和PG-9.2有相同的问题:

PostgreSQL – Password authentication fail after adding group roles

因此,显然有一种方法来无意地将伪造密码有效性设置为Unix时期(1970年1月1日,abstime类型的最小可能值)。也许,PG本身或在一些客户端工具中会有一个错误,会创建这种情况。

编辑:原来是一个pgadmin错误。见http://dba.stackexchange.com/questions/36137/

原文链接:https://www.f2er.com/postgresql/193669.html

猜你在找的Postgre SQL相关文章