Vous n'êtes pas identifié(e).
Bonjour à tous,
Je suis nouveau sur le forum, et j'ai un petit problème que je n'arrive pas à résoudre, malgré toutes mes recherches sur le net.
J'espère trouvé une solution auprès de vous.
Donc, je vous explique mon problème :
- j'ai installé PostgreSQL 9.0 sur un PC (sous Windows 7). Jusque là, pas de problème, tout fonctionne, j’accède à la base de données sur ce PC via mon application, etc..
- Ensuite, sur un autre PC connecté sur le même réseau (également sous Windows 7), je voudrais me connecter à cette base, qui est sur mon autre PC, depuis celui-ci. J'y ai donc installé le pilote ODBC. L'installation s'est bien déroulé, mais c'est après que les choses ne vont pas.
Lorsque j'ajoute une Source de données utilisateur avec les paramètres de connexion et que j'effectue un test, j'ai ce message d'erreur :
- "Could not connect to the server
connect failed for [192.168.0.18:5432]"
J'ai bien essayé de désactiver le pare-feu, mais toujours le même problème et dans le fichier postgres.conf, la connexion IP est defini en *.
Donc, je ne vois pas d'ou peu venir mon problème.
Merci à vous pour votre aide.
Dernière modification par yo94 (05/11/2010 13:58:41)
Hors ligne
Le listen_addresses est à '*' ?
Est il décommenté ? (pas de # en début de ligne)
Marc.
Hors ligne
Oui, il est bien décommenté.
Hors ligne
Au niveau de PostgreSQL, avec un tel message d'erreur, le problème ne peut venir que des paramètres listen_adresses et port. Vérifier qu'ils sont bien décommentés tous les deux, que listen_adresses vaut bien '*' et que port vaut bien 5432. Redémarrez PostgreSQL.
Si vous avez toujours le même message d'erreur après ça, c'est que le problème ne vient pas de PostgreSQL mais d'autres choses. Une config réseau, un routeur, un firewall (sur le serveur et/ou sur le client), etc.
Guillaume.
Hors ligne
Comme je l'ai dit, les paramètres listen_adresses sont bien décommenté.
J'ai bien redémarré PostgreSQL, et j'ai même désactivé mon pare-feu Windows ; mais le problème persiste.
Au niveau de ma freebox, j'ai même redirigé le port 5432 vers mon adresse IP.
Je tourne en rond, et je ne vois pas de solution!!!
Dernière modification par yo94 (05/11/2010 16:47:51)
Hors ligne
Vérifiez une dernière chose : dans une fenêtre de commande (cmd), exécutez netstat -an
Si vous avez une ligne identique à celle-ci, c'est que PostgreSQL fonctionne bien. Cherchez alors, côté firewall, antivirus?
TCP 0.0.0.0:5432 0.0.0.0:0 LISTENING
Marc.
Hors ligne
Je vais testé cela en rentrant ce soir.
Par contre, je n'ai pas pensé à l'antivirus aussi, donc je testerais tout ça.
Petite question : suis-je obligé d'installer PostgreSQL sur mon poste client aussi?
Car, je suis développeur sous Oracle, et sur chaque poste, nous sommes obligé d'avoir la console Oracle d'installé ; est-ce le même principe pour PostgreSQL?
Dernière modification par yo94 (05/11/2010 17:15:07)
Hors ligne
Non, sur le poste client, cela dépend de ce que vous voulez faire, vous pouvez vous contenter du driver odbc, jdbc (si vous faites du java), npgsql (si vous faites du .net), etc…
Marc.
Hors ligne
Merci, je vais testé le commande et voir du coté de l'antivirus alors!!
Hors ligne
Dans le fichier "pg_hba.conf", n'ai-je pas une ligne a ajouté?
Actuellement, je dois avoir ça (il me semble) :
host all all 127.0.0.1/32 md5
Hors ligne
Si, vous aurez cette ligne à rajouter. Mais ce n'est pas la cause de l'erreur (le message serait différent, vous auriez une erreur d'authentification, pas une impossibilité de vous connecter).
Marc.
Hors ligne
Bon finalement, j'ai tout reconfiguré correctement.
Le "pg_hba.conf" et le "postgresql.conf" sont maintenant configuré comme vous m'avez indiqué.
J'ai également exécuté la commande netstat -an, et pas de problème.
J'ai donc refait mes tests sans le pare-feu et sans l'antivirus, et la miracle, la connexion se fait.
J'ai réactivé mon antivirus, la connexion se fait également.
Donc c'etait bien mon pare-feu, et peut-être les fichiers "pg_hba.conf" et "postgresql.conf" qui était mal configuré.
Mais maintenant, je ne sais pas quel programme ou fonctionnalité il faut que je rajoute dans mon pare-feu pour l'autoriser??
Hors ligne
Ça y est, j'ai réussi à configurer correctement mon pare-feu windows.
Je poste la solution pour ceux à qui cela peut arriver.
Il faut ajouter dans le pare-feu "postgres.exe", qui ce trouve dans le dossier : ..\PostgreSQL\9.0\bin\
Merci à ceux qui ont pris de leur temps pour m'aider.
Dernière modification par yo94 (05/11/2010 21:15:31)
Hors ligne
Bonjour
Je suis nouveau sur le forum.
Je doit faire un projet sur PostgreSQL.
Je viens de lire cette conversation et il y a un problème que je n'arrive pas a résoudre : lorsque je tape netstat -an dans l'invite de commande, je n'ai pas la ligne : TCP 0.0.0.0:5432 0.0.0.0:0 LISTENING.
Qu'elles peuvent en être les raisons ? Et qu'elles peuvent en être les solutions ?
Par avance merci
Hors ligne
PostgreSQL n'est pas lancé ou n'écoute pas sur le port 5432.
Guillaume.
Hors ligne
Voici le message d'erreur de pgadmin : could not connect to server: Connection refused (0x0000274D/10061) Is the server running on host "127.0.0.1" and accepting TCP/IP connections on port 5432?
Et quand je fais Start Server il me met : le service SQL n'a pas pu etre lancé
the strat command return an error (2)
Hors ligne
L'un comme l'autre indiquent que le serveur n'est pas lancé.
Guillaume.
Hors ligne
Comment puis-je le lancer ? Ou pourquoi il ne se lance pas ?
Hors ligne
Aucune idée. Il faut avoir un message d'erreur pour en savoir plus. Ils sont stockés dans un fichier qui dépend de la configuration du système d'exploitation et/ou de la configuration de PostgreSQL. Donc déjà, quel est votre système d'exploitation et comment avez-vous installé PostgreSQL ?
Guillaume.
Hors ligne
J'ai windows XP et je l'ai installé avec l'assistant par défaut.
Hors ligne
netstat existe sous Windows ? ça m'étonnerait.
Enfin bon, sous windows, vous devez aller dans le sous-répertoire pg_log du répertoire d'installation de PostgreSQL (par défaut C:\Program Files\<version>\data). En remplaçant évidemment <version> par votre version. Vous y trouverez normalement des fichiers .log qui devraient avoir quelques informations sur la raison du non lancement.
Guillaume.
Hors ligne
J'ai effectivement des fichiers dans ce répertoire,correspondant à mes tentatives de connexions, mais ils sont tous vides...
Hors ligne
J'ai essayé avec sql shell.
Il dit :
"pgsql: n'a pas pu se connecter au serveur : Connection refused (0x0000274D/10061)
Le serveur est-il actif sur l'hôte "localhost" et accepte-t-il les connexions TCP/IP sur le port 5432 ? "
J'ai aussi essayé à partir des services dans panneau de configuration>outils d'administration>services : PostgreSQL Server
Mais voici le message que je reçois:
" Impossible de démarrer le service PostgreSQL Server 8.3 sur Ordinateur local.
Erreur 1053 : le service n'a pas répondu assez vite à la demande de lancement ou de contrôle. "
Je ne sais pas si ça peut faire avancer mon problème.
En tout cas merci.
Dernière modification par fifix22 (28/12/2010 01:08:09)
Hors ligne
Avez-vous regardé dans le journal des événements de Windows ?
L'une des causes majeures de problèmes sous Windows est les antivirus. C'est peut-être lui, la cause du problème, si vous avez un antivirus.
Guillaume.
Hors ligne
Donc le journal des évènements me signale une erreur : "could not map view of backend variables: error code 6"
Du coup j'ai cherché ce que ça signifiait. Et j'ai trouvé que l'antivirus Bitdefender 2011 était la source de ces problèmes. Il faut donc le désinstaller.
Problème résolu !!!
Merci à Gleu de m'avoir aidé.
Hors ligne