2012-06-23 23 views
13

Estoy recientemente la creación y gestión de un servidor Windows 2008 R2 con VMware Workstation 8.problemas de conexión pgadmin3

Estoy corriendo una caja virtual Linux Centos 6.2 con PostgreSQL 9.1. Todo parece estar bien localmente y puedo conectarme a la caja de CentOS a través de una conexión de red puenteada.

He seguido David Ghedini's tutorial para configurar Postgresql 9.1. Así que puedo iniciar una ventana de sesión de masilla, iniciar sesión como root e iniciar el shell psql y emitir sentencias como usuario de Postgres. Mi problema es que no puedo conectarme usando pgAdmin III desde mi cliente de Windows 7. He actualizado el /var/lib/pgsql/9.1/data/postgresql.conf para habilitar listen_addresses '*', etc.

¿Alguien podría darme algún consejo sobre cómo encontrar mi culpa? Se ha asegurado de que Firewall de Windows también esté desactivado en el servidor de Windows.

El cliente pgAdmin III informa;

'Servidor no escucha'

El servidor no acepta conexiones: los informes de la biblioteca de conexión

no se pudo conectar con el servidor: la conexión agotado (0x0000274C/10060 ¿El servidor se está ejecutando en el host "192.168.1.26" y acepta conexiones TCP/IP en el puerto 5432?

Esta es la entrada pg_hba.conf archivo añadido:

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

y el archivo de las entradas iptables añadido:

-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

reinició el servicio postgresql después de actualizar el archivo conf? también, pg_hba.conf puede ser lo que le está causando problemas. [aquí hay una copia que uso para mi instancia dev postgres] (https://gist.github.com/2854761). es ** extremadamente ** permisivo pero debería funcionar para dev para usted. – swasheck

+0

salvo eso, publique el error que se da por pgAdminIII – swasheck

+0

Mmm ... maldición, estaba seguro de que debe haber sido la entrada del host 'pg_hba.conf'. Seguí tu synatax y agregué un host con todas las entradas de confianza, volví a cargar el archivo conf pero seguí recibiendo el mensaje "El servidor no escucha". ¡La espera de Connect comienza a perseguirme! – MaRk

Respuesta

12

necesita ajustar pg_hba.conf:

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

Una vez que agregue su propio host y el usuario correspondiente, reinicie el servidor postgresql para poder conectarse.

También es posible que tenga que activar su puerto en la red: http://www.cyberciti.biz/tips/postgres-allow-remote-access-tcp-connection.html

+0

Si fuera el archivo pg_hba.conf, creo que el usuario recibiría un mensaje de error diferente. – kgrittn

+0

Andrew, he seguido las guías en los dos enlaces provistos y he actualizado el OP para mostrar estas entradas. Pensé que las entradas de iptables proporcionarían la solución, pero desafortunadamente todavía no puedo conectarme con pgAdmin III y recibo el mismo error. – MaRk

+0

OK, ¡ahora estoy conectado! Whoohoo! Buena cosa. Reanudé el servicio y luego pude conectarme. Muchas gracias, estoy seguro de que lo único sobresaliente fue la configuración de iptables. De todos modos, muchas gracias. – MaRk

0

es el servidor que se ejecuta en host "192.168.1.26" y la aceptación de TCP/IP conexiones en el puerto 5432?

Compruebe que el servidor tenga esa dirección IP. Compruebe que haya procesos postgres ejecutándose. Use netstat para confirmar que el servidor está escuchando en el puerto 5432.

+0

Sí, el servidor está definitivamente en esa IP, ya que puedo enviarlo e iniciar sesión. Como dije originalmente, también he verificado que postgres se está ejecutando mediante la ejecución de comandos en el shell psql como usuario postgres. Curiosamente, cuando ejecuto el comando netstat, no veo ninguna mención del puerto 5432. – MaRk

+2

Inicie sesión con 'psql' y escriba' show port; 'y' show listen_addresses; '. Quizás algo haya anulado las configuraciones que cree que está usando, o necesita reiniciar el servidor. Además, ¿hay alguna posibilidad de que la VM esté implementando algún tipo de firewall? – kgrittn

0

tengo el mismo problema. Inhabilité todos mis antivirus y cortafuegos de terceros y volví a instalar PostgreSQL y ahora está funcionando bien ...:)

1

se permite hacer seguro servidor PostgreSQL a través del firewall:

En el equipo servidor, vaya a

Panel de control> Sistema y seguridad> Firewall de Windows> Permitir una aplicación través de Firewall de Windows

Desplácese por las aplicaciones y características permitidas, asegúrese de que esté marcado 'Servidor PostgreSQL'.

Cuestiones relacionadas