не вдається підключитися до віддаленої бази даних 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 перезапуск.

Тепер, коли я намагаюся підключитися, я отримую таке повідомлення про помилку:

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.
Іонічний

@Ionic це правда
датський Khakwani

2
Добре називайте мене параноїком, але я не довіряю занадто багато сервісів в мережі. ;-) Просто бути в курсі. :-)
Іонічний

порт інструмент перевірки допоміг мені тут
Совіте
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.