我的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
...
答案 0 :(得分:4)
可能尝试单用户模式。停止postgres,然后从命令行运行它:
postgres --single -D path/to/your/postgres/directory
然后:
ALTER ROLE postgres WITH LOGIN
使用 Ctrl-D 终止会话。
这应该允许postgres
用户再次登录服务器。