pgsql puede conectarse, pgadmin no puede

pgsql puede conectarse, pgadmin no puede

Solo queremos 1 rol que posea 1 base de datos, Domain-Unix Socket, sin contraseña

postgres@luciol-essai:~$ more /etc/postgresql/8.4/main/pg_hba.conf | grep jppstphp
local   essais_php  jppstphp                       trust
postgres@luciol-essai:~$ 

Éxito con psql:

envol@luciol-essai:~$ psql -U jppstphp essais_php
psql (8.4.15)
essais_php=> 

Fallo con pgadmin3:

Este es el error.

Error connecting to the server: FATAL:  authentification Ident ?chou?e pour l'utilisateur << jppstphp >>

Respuesta1

Parece que a PgAdmin-III se le está indicando que se conecte a localhosto 127.0.0.1, por lo que está usando TCP/IP, mientras que a psql no se le está dando una especificación de host, por lo que está usando sockets UNIX ( local).

Deje el campo de nombre de host en pgadmin3 en blanco o agregue otra pg_hba.confentrada para host essais_php jppstphp 127.0.0.1/32 trust.

Respuesta2

Debes revisar todo tu pg_hba.confexpediente, el orden de las directivas es importante. Supongo que mantuviste la línea predeterminada:

local   all         all                               ident

Si esta línea está presente antes de su línea específica acerca de jppstphp, el servidor postgresql primero intentará identificarlo a partir de su nombre de usuario UNIX, que parece ser envol. Esto fallará porque intenta conectarse como usuario/rol de Postgres jppstphp.

Si mi suposición es correcta, eliminar la línea anterior (y posiblemente la entrada similar con md5autenticación de contraseña) o colocar su jppstphplínea antes debería permitirle conectarse a través del enchufe local.

Para conectarse a través del enchufe local, todo lo que se requiere es dejar el campo de host en blanco, como lo hizo usted.

Respuesta3

Tuve el mismo problema con psql a través de la conexión de la línea de comandos y pgAdmin no se conecta en RDS con AWS. Tenía mi RDS configurado en Acceso público. Me aseguré de que mi ACL y mis grupos de seguridad estuvieran completamente abiertos y siguieran teniendo problemas, así que hice lo siguiente: sudo find . -name *.conf luego sudo nano ./data/pg_hba.conf agregué a la parte superior de las directivas en el archivo pg_hba.conf host all all 0.0.0.0/0 md5 y pgAdmin me inició sesión automáticamente.

Como nota al margen, mi RDS estaba en mi VPC predeterminada. Tenía una instancia de RDS idéntica en mi VPC no predeterminada con configuración de grupo de seguridad, ACL y grupo de seguridad idénticas a mi VPC predeterminada y no pude hacer que funcionara. No estoy seguro de por qué, pero eso es para otro día.

información relacionada