Bon j'ai résolu avec la création des users avant d'activer le md5, ça reste étrange mais bon j'ai une olution.
le mode trust permet aux utilisateurs de se connecter sans mot de passe, donc lorsque tu met md5 c'est normal qu'a la prochaine connexion il te demande un mot de passe
par défaut l'utilisateur postgres n'a pas de mot de passe donc impossible de s'y connecter si md5, par contre si tu as trust ou ident sameuser y'a pas de soucis, sachant que trust est fortement déconseillé et ne sert qu'a vérifier que l'on arrive bien a se connecter.
Sous les Unix/Linux tu devrait laisser la ligne commençant par local à ident sameuser et les lignes commençant par host avec md5
ainsi pour fixer un mot de passe à l'utilisateur postgres il faut passer en root puis ensuite en utilsateur postgres
$ sudo su -
# su - postgres
$ psql
# ensuite une fois connecté en sous psql executer la commande ci dessous
ALTER USER postgres ENCRYPTED PASSWORD 'toto';
Ainsi il sera possible de se connecter à la base via pgadmin3.
]]>Je me heurte encore à un autre soucis, je vois le bout du tunnel mais il reste quelques écueils... J'installe postgreSQL et je modifie le fichier pg_hba.conf pour mettre les accès en md5 et là gros problème... je ne peux plus accéder... Je pensais que postgres l'utilisateur par défaut n'avait pas de mot de passe, mais une fois le md5 activé (et le serveur redémarré), si je ne rentre pas de mot de passe pour l'utilisateur postgres l'accès m'est refusé, alors qu'il n'en a pas, et d'ailleurs je veux accéder pour lui en donner un (et créer un autre utilisateur et une base de données...).
SOS.
Je me suis dit que je pouvais créer l'utilisateur et modifier postgres avant d'activer le md5, ceci avec psql -c, mais visiblement il faut dans cette ligne de commande que je précise le nom de la base de donnée... Je n'ai pas trouvé la syntaxe pour le faire à la suite de psql -c et je ne sais pas laquelle indiquer pour les utilisateurs, template01 ?
Mais est-ce normal que, même en ayant activé le md5, je ne puisse accéder à un utilisateur sans mot de passe (postgres en l'occurence, si comme je le pense il n'a pas de mot de passe par défaut).
Merci
]]>Quelle est la commande pour lancer et couper le serveur ? Merci, cela m'évitera de passer par ServiceManager, j'ai beau chercher je ne trouve pas.
]]>Merci beaucoup à gleu pour toutes ses réponses
]]>- La fenêtre du répertoire "data" est ouverte, je déplace pg_hba.conf sur le bureau. Plus de fichier pg_hba.conf dans "data" le serveur ne démarre plus, ok.
- Je remet le fichier pg_hba.conf sans y avoir touché. OK le serveur redémarre.
- Je le remet sur le bureau (donc l'enlève de "data"), le duplique, j'en fais une copie, apparait d'ailleurs cette copie sur le bureau avec "-copie". Je place cette copie dans le dossier "data" et renomme en pg_hba.conf, sans "-copie" : plus de démarage du serveur !!!! C'est excatement le même fichier je ne l'ai pas modifié !!!
- J'enlève cette copie remet l'original (bien que les 2 fichiers soient rigoureusement identiques) et ... le serveur remarche !!!
Argh.. Je deviens fou là ??? Quelqu'un a une idée de génie ?? Merci
]]>Je ne change que le trust, ce qui donne ça :
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
Ce qui pose problème c'est dès que je touche à pg_hba.conf.
Partout il est écrit que pour sécuriser c'est dans ce fichier que tout se passe. en effet je le lis et donc comme indiqué partout je modifie "trust" par "md5", et à partir de là si je relance mon projet, et là, plus de connection au serveur. Le fait de modifier ce fichier bloque toute connection au serveur, il ne s'agit pas d'un problème de mot de passe, de toute manière si je remet tout en trust le problème reste le même. D'ailleurs comme je l'expliquais, avant de toucher au fichier j'en ai fais une sauvegarde intacte. Lorsque je replace cette sauvegarde ça ne change rien c'est assez incroyable, seul solution réinstaller postgreSQL
Je me suis dis que ça venais peut-être du fait d'ouvrir les autorisation d'accès Unix au dossier data, mais en modifiant juste les autorisations sans toucher au fichier ça ne bug pas. Est-ce que la modification de ce fichier entraine la modification d'un autre ??
]]>Pour le reste, très difficile de savoir ce qu'il se passe sans plus d'infos.
]]>could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/tmp/.s.PGSQL.5432"?
De toute manière le "manager" ne veut plus lancer le serveur, là je ne comprends plus... On doit modifier ce fichier pour quitter le mode trust mais dès que je le touche tout est définitivement planté !!! Je précise que j'ai juste remplacé trust par md5 et de toute manière replacé le fichier non modifié après et idem le serveur ne démarre plus... SOS
]]>- Je suis étonné que pgadminIII me permette de créer des serveurs en veux-tu en voilà, je pensais qu'en installant Postgres j'avais un serveur de base de donnée sur lequel je créais des utilisateurs et des BDD, cette notion de création de serveurs me perturbe, j'ai du mal à l'appréhender. En plus je cré des utilisateurs et BDD via mon projet xcode et pour vérifier je lance pgadminIII, il faut que je cré un serveur pour accéder aux utilisateurs et à ma BDD, je pensais qu'il fallait un serveur pour créer de utilisateurs et une BDD... Une explication sur ces bases pour un débutant ?
- Donc via pgadmin III je cré des serveurs de test, les supprime, puis recré pour vérifier que mon projet fait ce qu'il faut et parfois (comme en ce moment) je ne peux plus créer de serveurs, j'ai un message me disant "impossible de se connecter au serveur no such file or directory...". Là il me manque les bases je suis paumé. Pourquoi d'un coup cette impossibilité ? Et je croyais que les serveurs je les créais avec pgadminIII, l'erreur actuelle survient lors de la tentative de création d'un serveur de test...
Je serais très reconnaissant à celui qui pourra m'expliquer tout ça... Merci par avance.
]]>