Невозможно подключиться к PostgreSQL - PullRequest
1 голос
/ 01 февраля 2011

Я пытаюсь получить доступ к таблице из PostgreSQL, представленной на другой машине. Я получаю следующую ошибку.

Connection refused. Check that the hostname and port are correct and that the
postmaster is accepting TCP/IP connections.

at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:136)
    at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:66)
    at org.postgresql.jdbc2.AbstractJdbc2Connection.<init>(AbstractJdbc2Connection.java:125)
    at org.postgresql.jdbc3.AbstractJdbc3Connection.<init>(AbstractJdbc3Connection.java:30)
    at org.postgresql.jdbc3.Jdbc3Connection.<init>(Jdbc3Connection.java:24)
    at org.postgresql.Driver.makeConnection(Driver.java:393)
    at org.postgresql.Driver.connect(Driver.java:267)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)

Я также настроил свой ip в файле pg_hba.conf, но такая же ошибка существует. Что может быть решением для этого?

Ответы [ 4 ]

3 голосов
/ 01 февраля 2011

Можете ли вы telnet к IP-адресу и номеру порта, где вы думаете, что PostgreSQL слушает?

  • Если нет, проблема в том, что почтмейстер не работает, или в вашей сети что-то болтает - брандмауэры блокируют доступ к порту или не могут найти хост или что-то еще. 1006 *

  • Если вы можете добраться до администратора почты через telnet, возможно, вы указали неверные учетные данные или что-то в этом роде - но ошибка предполагает, что ваш клиентский код не может найти удаленный PostgreSQL. Более вероятно, что конфигурация, используемая кодом Java, отличается от конфигурации, которую вы успешно продемонстрировали при работе с telnet.

1 голос
/ 05 мая 2012

Я новичок в PostgreSql, но у меня тоже была такая же проблема много раз, наконец-то я нашел решение.

Проблема была с портом блокировки брандмауэра (например, 5432), как только ему был предоставлен доступчерез брандмауэр я смог подключиться к серверу базы данных.

Вы должны добавить только порт, который вы используете в postgreSql для брандмауэра.

после этого мой postgreSql отлично работает с Jdbc.

0 голосов
/ 07 октября 2011

У меня такая же проблема. Я добавил следующую запись в pg_hba.conf и работал. Убедитесь, что вы перезапустили postgres после изменения файла конфигурации

host    all         all         0.0.0.0/0         md5
0 голосов
/ 01 февраля 2011

Какая настройка для "listen_addresses" в postgresql.conf?

SHOW listen_addresses;

А вы перезагружали файлы конфигурации после изменений в pg_hba.conf и postgresql.conf?

SELECT pg_reload_conf();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...