невозможно подключиться к удаленной базе данных postgresql

16

Я пытаюсь подключиться к удаленной базе данных PSQL. Прежде чем я добавил запись pg_hba.conf с IP-адресом клиента, я получал сообщение об ошибке:

xdev@xdevbox:~$ psql -U postgres testdb -h 10.1.1.47
psql: FATAL:  no pg_hba.conf entry for host "10.201.50.71", user "postgres", database "testdb", SSL off

Я добавил IP клиента с настройками доверия. Я также изменил адрес прослушивания в postgres.conf на сервере, чтобы прослушивать «*». Затем я перезапустил сервер базы данных с помощью команды /etc/init.d/postgresql restart.

Теперь, когда я пытаюсь подключиться, я получаю следующее сообщение об ошибке:

psql: could not connect to server: Connection refused
    Is the server running on host "10.1.1.47" and accepting
    TCP/IP connections on port 5432?

в postgresql.conf порт установлен на 5432. Я не уверен, что еще нужно проверить.

Благодарность

точка
источник
Можете ли вы пинговать этот адрес?
Дезсо
1
Я бы сказал, что БД не перезапустилась правильно, когда вы ее перезапустили. Проверьте файлы журнала PostgreSQL на предмет причины - возможно, опечатка в pg_hba.conf.
Крейг Рингер
Мне пришлось изменить адрес прослушивания с * на конкретный IP-адрес.
точка

Ответы:

22

Вы должны настроить следующие два файла

pg_hba.conf

host all all 0.0.0.0/0 md5

postgresql.conf

listen_addresses='*'

Вы должны проверить, открыт ли порт 5432: http://www.yougetsignal.com/tools/open-ports/

Если это не так, добавьте правило к вашему iptables:

iptables -A INPUT -s 0/0 -p tcp --dport 5432 -j ACCEPT

0/0: Если вы хотите, чтобы кто-нибудь получил к нему доступ. Вы можете изменить его на определенный IP-адрес или диапазон IP-адресов.

Датский хаквани
источник
1
Просто дополнение. Вам не нужно использовать внешний инструмент. Просто используйте, telnet [yourServerIp] 5432если у вас не установлен telnet, вы можете использовать, PowerShellнапример, в Windows.
Ионик
@ Ионик, это правда
датский хаквани
2
Ну, назовите меня параноиком, но я не доверяю слишком многим услугам в сети. ;-) Просто чтобы быть в курсе. :-)
Ionic
Мне помог инструмент проверки портов
Шоби