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 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/ (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |