Vous n'êtes pas identifié(e).

#1 08/05/2012 13:12:00

gdhia
Membre

Problème de connexion via PgAdmin III

Bonjour à tous,

j'ai un serveur Debian sur le quel est installé Postgresql, avec une base de données.

J'ai installé pgAdmin III sur mon ordinateur (Win 7) et j'essaye de communiquer avec le serveur postgres sur mon serveur pour l'afficher.

sur mon serveur, l'utilisation de ce code me renseigne des DB installées

postgres=# select datname from pg_database;
  datname  
-----------
 template1
 template0
 postgres
(3 rows)

j'ai vérifié sur mon serveur que posgres écoutait bien sur le port 5432:

tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN      4998/postgres

le parfeu ne bloque pas ses connexions entrantes:

ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:postgresql 

le service est en marche:

8.3     main      5432 online postgres /var/lib/postgresql/8.3/main       /var/log/postgresql/postgresql-8.3-main.log

postgresql.conf continent la valeur:   

#listen_addresses = '*'

et malgré tout ça, pgAdmin III me donne:

could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host "xx.xx.xx.xx" and accepting TCP/IP connections on port 5432? 

.

est ce que quelqu'un pourrait m'aider à contacter le serveur postgresql installé sur mon serveur Debian via pgAdmin III installé sur mon pc ?

Dernière modification par gdhia (08/05/2012 13:12:38)

Hors ligne

#2 08/05/2012 13:20:29

gleu
Administrateur

Re : Problème de connexion via PgAdmin III

netstat vous indique que PostgreSQL écoute sur le port 5432 de l'interface loopback, pas sur le port 5432 de l'interface de votre carte réseau. D'ailleurs, vous avez un dièse devant le paramètre listen_addresses, autrement dit la valeur indiquée n'est pas prise en compte. Commencez par enlever le dièse devant listen_addresses, redémarrez PostgreSQL, et tentez de vous connecter.


Guillaume.

Hors ligne

#3 08/05/2012 13:49:32

gdhia
Membre

Re : Problème de connexion via PgAdmin III

gleu a écrit :

. Commencez par enlever le dièse devant listen_addresses, redémarrez PostgreSQL, et tentez de vous connecter.

une fois cette étape faite, j'ai le message d'erreur:

error connecting to the server: FATAL: missing or erroneous pg_hba.conf file
HINT: see server log for details
FATAL: missing or erroneous pg_hba.conf file
HINT: see server log for details

Pour info, le fichier pg_hba.cof contient les dernières lignes suivantes:

###local   all         postgres                          ident sameuser
local   all         postgres                          trust
# TYPE  DATABASE    USER        CIDR-ADDRESS          METHOD
# "local" is for Unix domain socket connections only
###local   all         all                               ident sameuser
local   all         all                               trust
# IPv4 local connections:
###host    all         all         127.0.0.1/32          md5
host    all         all         127.0.0.1/32          trust
host    all         all         ::1.128               trust

# IPv6 local connections:
###host    all         all         ::1/128               md5
host       all  	  all  	xx.xx.xx.xx:32 	trust
host       all         postgres    xx.xx.xx.xx:32      trust

xx.xx.xx.xx représente l'adresse IP de mon pc à partir du quel j'essaye de me connecter en utilisant pgAdmin III

Là, le problème, c'est que même si je remet le # avant listen_addresses j'ai toujours la même erreur sur pgAdmin III

le log de postgressql me dit à sa fin:

2012-05-08 11:38:39 UTC LOG:  invalid IP address "::1.128" in file "/etc/postgresql/8.3/main/pg_hba.conf" line 81: Name or service not known

cette ligne étant:

host    all         all         ::1.128               trust

le truc c'est que sur le même log, j'ai souvent ce code à répétition:

2012-05-08 11:33:47 UTC LOG:  autovacuum launcher started
2012-05-08 11:33:47 UTC LOG:  database system is ready to accept connections
2012-05-08 11:33:47 UTC LOG:  incomplete startup packet

Hors ligne

#4 08/05/2012 14:10:50

rjuju
Administrateur

Re : Problème de connexion via PgAdmin III

Pour écouter sur l'interface ipv6 en local, il faut saisir
host    all             all             ::1/128                 trust
et non
host    all         all         ::1.128               trust

Cette ligne est d'ailleurs présente dans votre pg_hba.conf et doublement commentée. Le mieux serait de la supprimer de la partie ipv4 et de la réactiver dans la partie ipv6, ou alors de la supprimer de la partie ipv4 et la laissée commentée si vous ne comptez pas vous connecter en local via l'adresse ipv6.

Dernière modification par rjuju (08/05/2012 14:12:21)

Hors ligne

#5 08/05/2012 14:11:05

gleu
Administrateur

Re : Problème de connexion via PgAdmin III

Ça n'a rien à voir avec la modification que je vous ai demandé de faire. En fait, votre fichier pg_hba.conf contient trois lignes erronées.

host    all         all         ::1.128               trust

doit être remplacé par

host    all         all         ::1/128               trust

et

host       all  	  all  	xx.xx.xx.xx:32 	trust
host       all         postgres    xx.xx.xx.xx:32      trust

par

host       all  	  all  	xx.xx.xx.xx/32 	trust
host       all         postgres    xx.xx.xx.xx/32      trust

Guillaume.

Hors ligne

#6 08/05/2012 15:01:36

gdhia
Membre

Re : Problème de connexion via PgAdmin III

Chers amis,

Je vous remercie gracieusement. pgAdmin III fonctionne enfin

Merci encore.

smile

Hors ligne

Pied de page des forums