我曾尝试在我的 Windows Vista 上安装 Postgres,但似乎无法让它工作。
我下载了 PGAdmin 工具,当我尝试连接到本地主机时,它告诉我连接被拒绝。
我启用了所有 IP 地址的监听,并将本地身份验证设置为“信任”
我不确定如何检查服务器是否真的在运行,即使在 Windows 上我也认为用户名仍然是 postgres。
我不知道我可以使用什么工具或应该寻找什么流程。
有一个 postgresql-9.1 服务未运行,当我尝试启动它时,它告诉我“本地计算机上的 postgresql-9.1 服务已启动然后停止。如果某些服务未被其他服务或程序使用,它们会自动停止。”
我没有主意了,有人可以帮忙吗?
PS.下面是我的 pg_hba 文件
#IPv4 local connections:
host all all 192.168.0.1/16 trust
#IPv6 local connections:
host all all * trust
host all postgres 192.168.0.1/16 md5
host all postgres ::1/128 md5
local all all trust
PPS. 错误日志的内容如下:
011-11-20 21:58:07 EST LOG: local connections are not supported by this build
2011-11-20 21:58:07 EST CONTEXT: line 87 of configuration file "C:/Program Files/PostgreSQL/9.1/data/pg_hba.conf"
2011-11-20 21:58:07 EST FATAL: could not load pg_hba.conf
答案1
猜测一下,你应该看看第 87 行(如错误消息所示),你可能会发现那是“local all all”行。因为错误消息告诉你不支持“本地”连接。
“本地”连接类型适用于 unix 套接字,而不是 tcp 套接字,Windows 不支持它们。
答案2
PostgreSQL 曾经默默容忍 pg_hba 中的那一行。
http://www.postgresql.org/docs/9.1/interactive/release-9-1.html#AEN106700
如果您希望建立本地无密码连接,您可以这样做。
host all all 127.0.0.1/32 trust