У меня 2 ноутбука: один Mac, на котором работает PostgreSQL, а другой — Windows 8.1. На моем компьютере с Windows я установил драйвер ODBC для PostgreSQL.
Затем я изменил postgresql.conf
и pg_hba.conf
для того, чтобы разрешить удаленное подключение с моего Windows-бокса к БД. И я попытался соответствующим образом настроить соединение ODBC. Все сделано, но когда я нажал кнопку Test
в диалоговом окне настройки ODBC. В это время я получил сообщение об ошибке:
Не удалось подключиться к серверу. Время ожидания соединения истекло. Сервер работает на хосте и принимает TCP/IP-подключение на порту 5432.
Я не уверен, что мне еще делать. Я подключен к сети через модем/маршрутизатор Comcast. Мне установить Port Forwarding
или Port Triggering
для 5432? Или есть что-то еще?
решение1
Это все происходит в одной локальной сети, верно? Не через маршрутизатор или какую-то настройку, где клиент находится за пределами сети LAN, верно?
Что произойдет, если вы выполните сканирование портов с помощью инструмента типа Nmap с ПК на Mac? А на Mac запущен ли брандмауэр? Проверьте в системных настройках «Безопасность и конфиденциальность». На клиентской машине Windows брандмауэрмощьможет быть фактором, но я не настолько хорошо знаком с сетевыми технологиями Windows, чтобы давать советы по этому поводу?
В целом то, что вы описываете, похоже на проблему, связанную с брандмауэром. Либо настройка доступа к порту, либо что-то подобное.