Impossible de se connecter à la base de données PostgreSQL
J'ai créé un utilisateur comme ceci:
create user blog with password 'blog';
Puis j'ai fait le propriétaire d'une base de données:
alter database blog_development owner to blog;
Puis j'ai essayé de me connecter et ça ne fonctionne pas:
$ psql -d blog_development -U blog -W
Password for user blog:
psql: FATAL: Ident authentication failed for user "blog"
Aucune idée pourquoi?
Une chose que j'ai essayé le montage est pg_hba.conf
76 # Database administrative login by UNIX sockets
77 local all postgres ident
78
79 # TYPE DATABASE USER CIDR-ADDRESS METHOD
80
81 # "local" is for Unix domain socket connections only
82 local all all ident
83 # IPv4 local connections:
84 host all all 127.0.0.1/32 md5
85 host blog_development blog 127.0.0.1/32 md5
86 # IPv6 local connections:
87 host all all ::1/128 md5
Ligne 85 est celui que j'ai ajouté. J'ai redémarré PostgreSQL après cela, mais il ne semble pas de changer quoi que ce soit.
source d'informationauteur Jason Swett
Vous devez vous connecter pour publier un commentaire.
J'essayais juste de vous connecter dans le mauvais sens. Voici la bonne façon:
psql utilise un socket local par défaut (découvrez -h pavillon chez l'homme) - qui doit correspondre à la ligne 82 lorsque vous vous connectez.
ident
a besoin d'un réel de l'utilisateur dans le système pour vérifier le mot de passe contre. De sorte que vous pouvez vous connecter par l'animateur ou ajouter un utilisateur afin qu'il corresponde à vous la nouvelle configuration de la ligne.Avant la ligne 82, ajouter
et de le recharger ou de se connecter à l'aide de
-h localhost
.Avez-vous ajouté à l'utilisateur de pg_hba.conf? Voici la documentation.
http://www.postgresql.org/docs/8.4/static/auth-pg-hba-conf.html
Je ne me souviens pas vraiment de la syntaxe exacte, mais vous devez ajouter quelque chose comme ceci:
Vous pourriez avoir besoin de recharger ou de redémarrer le serveur pour que pg_hba.conf est à relire.