Я попытался установить postgres на Windows Vista, но, похоже, он не заработал.
Я загружаю инструменты PGAdmin, и когда я пытаюсь подключиться к localhost, он сообщает мне общую фразу, что соединение отклонено.
Я включил прослушивание всех IP-адресов и установил локальную аутентификацию на «доверие».
Я не уверен, как проверить, действительно ли запущен сервер, имя пользователя по-прежнему postgres, даже в Windows, я полагаю.
Я понятия не имею, какой инструмент мне использовать или на какой процесс мне следует обратить внимание.
Есть служба postgresql-9.1, которая не запущена, и когда я пытаюсь ее запустить, она сообщает мне: «Служба postgresql-9.1 на локальном компьютере была запущена, а затем остановлена. Некоторые службы останавливаются автоматически, если они не используются другими службами или программами».
У меня закончились идеи. Может кто-нибудь помочь?
P.S. ниже мой файл 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". Как указано в сообщении об ошибке, "локальные" соединения не поддерживаются.
Тип подключения «local» предназначен для сокетов 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