4

У меня чистая установка Windows 10 Pro x64, и я пытаюсь запустить на нем сервер PostgreSQL. Раньше он прекрасно работал в Windows 7, но Windows 10 ведет себя очень странно: если я настрою PostgreSQL для прослушивания 127.0.0.1 то не смогу подключиться к нему с помощью psql:

psql: could not connect to server: Permission denied (0x0000271D/10013)
        Is the server running on host "localhost" (127.0.0.1) and accepting
        TCP/IP connections on port 5432?
could not connect to server: Connection refused (0x0000274D/10061)
        Is the server running on host "localhost" (::1) and accepting
        TCP/IP connections on port 5432?

Но если я изменю его на прослушивание 192.168.0.108 (мой ip интранета), тогда все будет работать:

>psql.exe --host=192.168.0.108 --username=test test
psql (9.4.0)

Такое же поведение (что означает, что PostgreSQL работает нормально), если я скажу ему слушать localhost как имя вместо IP, хотя в обоих случаях (либо localhost либо 127.0.0.1) он слушает точно на одном IP-адресе и порту:

>netstat -abno | grep 5432 -A 1
  TCP    127.0.0.1:5432         0.0.0.0:0              LISTENING       3480
 [postgres.exe]
--
  TCP    [::1]:5432             [::]:0                 LISTENING       3480
 [postgres.exe]

В моих C:\Windows\System32\drivers\etc\hosts ничего нет. И я не думаю, что проблема специфична для PostgreSQL, я просто использовал ее в качестве примера. У меня есть другие службы, работающие локально, которые имеют ту же проблему - не могу подключиться к локальному сокету из-за ошибки разрешений.

0