2012-06-23 2 views
13

Я недавно настройка и запуск сервера Windows 2008 R2 с VMware Workstation 8.проблем подключения pgadmin3

Я бегом виртуальной коробки Линукса Centos 6.2 с Postgresql 9.1. Все выглядит нормально, и я могу подключиться к коробке CentOS через мостовое сетевое соединение.

Я следовал David Ghedini's пошаговое руководство для создания Postgresql 9.1. Таким образом, я могу запустить окно сеанса шпатлевки, войти в систему под именем root и запустить оболочку psql и выдать утверждения как пользователь postgres. Моя проблема в том, что я не могу подключиться с помощью pgAdmin III от моего клиента Windows 7. Я обновил /var/lib/pgsql/9.1/data/postgresql.conf, чтобы включить listen_addresses '*' и т. Д.

Не могли бы вы дать мне какие-либо советы по поиску моей вины. Убедитесь, что брандмауэр Windows также отключен на сервере Windows.

Отчеты клиентов pgAdmin III;

'Сервер не слушает'

Сервер не принимает соединения: отчеты библиотеки подключений

не удалось подключиться к серверу: Тайм-аут соединения (0x0000274C/10060) Сервер работает на хосте «192.168.1.26» и принимает соединения TCP/IP на порту 5432?

Это добавляется запись pg_hba.conf файла:

#TYPE DATABASE USER ADDRESS   METHOD 
host all  all 192.168.1.0/24 trust 

И Iptables файл данные добавлены:

-A INPUT -p tcp -s 0/0 --sport 1024:65535 -d 192.168.1.26 --dport 5432 -m state --state NEW,ESTABLISHED -j ACCEPT 
-A OUTPUT -p tcp -s 192.168.1.26 --sport 5432 -d 0/0 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT 
+0

Вы перезапустили службу postgresql после обновления файла conf? Кроме того, pg_hba.conf может быть причиной ваших проблем. [вот копия, которую я использую для моего экземпляра dev postgres] (https://gist.github.com/2854761). это ** чрезвычайно ** разрешительный, но должен работать на dev для вас. – swasheck

+0

запрет, пожалуйста, сообщите об ошибке, которую дает pgAdminIII. – swasheck

+0

Ммм .. черт, уверен, что это была запись хоста 'pg_hba.conf'. Я следил за вашим синтаксисом и добавил хост все все записи доверия, перезагрузил файл conf, но все равно получал сообщение «Сервер не слушал». Ожидание подключения начинает преследовать меня! – MaRk

ответ

12

Вам нужно настроить pg_hba.conf:

http://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html

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

Кроме того, вы, возможно, потребуется включить это порт в сети: http://www.cyberciti.biz/tips/postgres-allow-remote-access-tcp-connection.html

+0

Если бы это был файл pg_hba.conf, я думаю, что пользователь получит другое сообщение об ошибке. – kgrittn

+0

Andrew, я следил за гидами в двух приведенных ссылках и обновил OP, чтобы показать эти записи. Я думал, что записи iptables предоставят решение, но, к сожалению, я все еще не могу подключиться к pgAdmin III и получить ту же ошибку. – MaRk

+0

Хорошо, теперь я подключен! Whoohoo! Качественный товар. Я перезапустил службу и смог подключиться. Большое спасибо, я уверен, что единственное, что было выдающимся, - это конфигурация iptables. Во всяком случае, большое спасибо. – MaRk

0

Является ли сервер работает на хост «192.168.1.26» и принимать TCP/IP соединения на порт 5432?

Убедитесь, что на сервере указан этот IP-адрес. Убедитесь, что запущены процессы postgres. Используйте netstat, чтобы подтвердить, что сервер прослушивает порт 5432.

+0

Да, сервер определенно на этом IP-адресе, так как я могу ssh к нему и логин. Как было изначально указано, я также проверил, что postgres запущен, выполняя команды в оболочке psql как пользователь postgres. Интересно, когда я запускаю команду netstat, я, похоже, не вижу упоминания о порту 5432. – MaRk

+2

Войдите в систему с 'psql' и введите' show port; 'и' show listen_addresses; '. Возможно, что-то переопределило настройки, которые, по вашему мнению, вы используете, или вам нужно перезагрузить сервер. Кроме того, есть ли вероятность, что виртуальная машина внедряет какой-то брандмауэр? – kgrittn

0

У меня такая же проблема. Я отключил все мои сторонние антивирусы и брандмауэры и снова установил PostgreSQL, и теперь он отлично работает ...:)

1

Убедитесь, что PostgreSQL сервера через межсетевой экран:

На машине-сервере, перейдите на

Панель управления> Система и безопасность> Брандмауэр Windows> Разрешить приложение через брандмауэр Windows

Прокрутить Допустимые приложения и функции, убедитесь, что установлен «Сервер PostgreSQL».

Смежные вопросы