web-dev-qa-db-fra.com

Erreur d'authentification du mot de passe d'erreur d'installation Ecto Postgres

J'ai créé un projet Phoenix à partir de l'exemple hello utilisant Digital Ocean. J'ai entré le nom d'utilisateur et le mot de passe du fichier etc/motd.tail. Je continue à recevoir le message d'erreur ci-dessous. Je suis un débutant et pour une raison quelconque, je ne parviens pas à installer correctement l’ecto.

** (Mix) La base de données pour Hello.Repo n'a pas pu être créée, raison donnée: psql: FATAL: échec de l'authentification du mot de passe pour l'utilisateur "elixir" FATAL: échec de l'authentification du mot de passe pour l'utilisateur "élixir"

Vous pouvez utiliser les informations d'identification suivantes pour la base de données Postgress: * Utilisateur: elixir * Passer: ***

installer. Toute aide serait appréciée. 

19
Robert Kass

Je suppose que cette erreur se produit sur la tâche mix ecto.create?

Cela est dû au fait que Ecto utilise psql pour créer la base de données, mais ce n’est plus le cas dans le prochain Ecto 2.0.

Le numéro suivant de GitHub montre le même problème https://github.com/elixir-lang/ecto/issues/1207

Le commentaire pertinent avec le correctif est https://github.com/elixir-lang/ecto/issues/1207#issuecomment-17257000064 :

Ma configuration de base de données (pg_hba.conf) était apparemment erronée.

Pour toute autre personne rencontrant ceci:

Héberger toutes les my_user 127.0.0.1/32 confiance ne fonctionnera pas Héberger tout my_user localhost trust fonctionnera

Veuillez vérifier votre pg_hba.conf (probablement dans /etc/postsgresql/9.x/pg_hba.conf).

7
Gazler

Je reçois la même erreur en utilisant Ubuntu 14.04 et j'ai corrigé la réinitialisation du mot de passe 'postgres':

$ Sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"

et redémarrez le service postgres:

Sudo service postgresql restart
53
Isa Souza

Nous avons juste besoin de créer un nouveau postgresql username et password en fonction des fichiers dans le dossier config en utilisant this méthode db

$ Sudo -u postgres createuser <username>
$ Sudo -u postgres createdb <dbname>
$ Sudo -u postgres psql
psql=# alter user <username> with encrypted password '<password>';
psql=# grant all privileges on database <dbname> to <username> ;
1
Fillype Farias

Je devais mettre à jour le fichier pg_hba.conf pour que cela fonctionne.

J'utilise Fedora, alors accédez à/var/lib/pgsql/data

# "local" is for Unix domain socket connections only
local   all             postgres                                peer
local   all             all                                     md5
# IPv4 local connections:
Host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
Host    all             all             ::1/128                 ident

Ensuite, j'ai créé un utilisateur elixir dans postgres avec des capacités de création de base de données et l'ai configuré dans dev.exs (utilisateur/mot de passe/base de données).

0