Essayer de mettre en place postgres pour ror application, erreur - fe_sendauth: pas de mot de passe fourni
Arriver:
An error has occurred:
Error connecting to the server: fe_sendauth: no password supplied
Paramètres dans database.yml
sont les mêmes que la configuration de l'application sur d'autres machines.
Comment puis-je mettre les choses en place, de sorte que je n'ai pas besoin d'un mot de passe codé en dur?
Je peux afficher le db ok à l'aide de PgAdmin III.
Je préfère ne pas avoir le mot de passe dans database.yml
que d'autres machines à l'aide de cette application n'avez pas besoin/il, aussi, il semble être quelque chose sur mon Pg installer.
- Je dirais que vous avez besoin de regarder
pg_hba.conf
et voir si vous avez ajouté desident
outrust
règles pour les autres DBs; comparer à celui-ci.
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin de changer votre changer votre
pg_hba.conf
. Voici un exemple de la mine:pg_hba.conf
:Noter que
trust
signifie que n'importe qui suraddress
(dans ce cas localhost) peut se connecter comme utilisateur répertorié (ou dans ce cas, l'utilisateur de leur choix). C'est vraiment seulement approprié pour le développement des configurations avec des données sans importance. Ne pas l'utiliser dans la production.pg_hba.conf
? EssayezSHOW hba_file;
dans psql pour trouverpg_hba.conf
. Vérifiez également le serveur PostgreSQL journaux.sudo -u postgres -i
psql
SELECT pg_reload_conf();
. Et j'ai trouvé lepg_hba.conf
à l'intérieur de psql avecSHOW hba_file;
de commande.@rodrigo-zurek étais sur place; vous devez changer le
pg_hba.conf
. Veux juste ajouter que cette réponse pour le OSX parce que lepg_hba.conf
est situé dans un endroit différent par défaut.La valeur par défaut sera
md5
dans la colonneMETHOD
, mais remplacer tous ceux avectrust
:Ensuite, ouvrir pgAdmin III à l'intérieur de vos Applications/PostgreSQL 9.X, cliquez-droit sur la base de données (par exemple,
PostgreSQL 9.4 (localhost)
), et cliquez surReload Configuration
. Après cela, j'ai été en mesure derake db:create
.pg_hba.conf
et de les enregistrer? Je suis nouveau sur MacPas de mot de passe fourni signifie que vous l'avez configuré pour exiger l'authentification par mot de passe et aucun mot de passe n'est fourni. Voici la documentation de 9.0: http://www.postgresql.org/docs/9.0/static/auth-methods.html
Garder à l'esprit que les locaux auth a été changé de "ident" à "par les pairs" en 9.1 pour éviter toute confusion. Voir la 9.1 docs à http://www.postgresql.org/docs/9.1/static/auth-methods.html
Également garder à l'esprit que ce est un ensemble ordonné règle avec le premier match des gouverneurs. En outre local et localhost sont différents. Locale locale de socket de domaine UNIX connexions, tandis que l'hôte localhost serait pour les connexions réseau à localhost. Donc, il semble que vous avez un dépannage à faire mais j'espère que les docs devraient vous aider.