Postgres在PostgreSQL服务器8.4中重置密码

时间:2013-03-02 04:20:37

标签: postgresql

我的PostgreSQL 8.4服务器中有20多个数据库。我的Postgres有人做错了什么,而且不再打开了。它给出了以下错误:

error connecting to the server fatal role postgres is not permitted to log in

我做了很多事情来恢复它,但它仍然无法正常工作。我在Windows XP中有PostgreSQL服务器8.4。

pg_hba.conf文件配置为:

# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD

# IPv4 local connections:
#local   all   postgres                         ident sameuser
host    all         all         127.0.0.1/32          trust
#host    all         postgres trust 
#host    all         all         192.168.44.12/32      trust
#host    all         all         192.168.44.103/32     trust
# IPv6 local connections:
#host    all         all         192.168.44.18/32      trust
# host   all     all     ::1/128     md5

我怀疑问题出在这里是因为有人修改了ROLE中的Postgres用户的NOT LOG IN ...

1 个答案:

答案 0 :(得分:4)

可能尝试单用户模式。停止postgres,然后从命令行运行它:

postgres --single -D path/to/your/postgres/directory

然后:

ALTER ROLE postgres WITH LOGIN

使用 Ctrl-D 终止会话。

这应该允许postgres用户再次登录服务器。