web-dev-qa-db-fra.com

rake db: la configuration a pour résultat fe_sendauth sans mot de passe fourni

Quand je lance: Rake db: setup 

je reçois: 

fe_sendauth: no password supplied

Couldn't create database for {"adapter"=>"postfresql", "encoding"=>"unicode",
"Host"=>"localhost", "pool"=>5, "username"=>"my_user", "password"=>nil,  
"database"=>"my_db_test"}

-- enable_extension("plpgqsl")
rake aborted


Tasks: TOP => db:schema:load

Mon database.yml:

connection: &connection
adapter: postgresql
encoding: unicode
Host:     localhost
pool: 5
username: my_user
password:

development:
  <<: *connection
  database: my_db_development

test: &test
  <<: *connection
  database: my_db_test

Déjà changer mon pg_hba.conf comme dans cette question: Essayer de configurer postgres pour ror app, obtenir une erreur - fe_sendauth: pas de mot de passe fourni Mais cela ne aide pas du tout.

11
szatan

C'est un problème de connectivité de base de données. 

Essayez de vous connecter directement à la base de données que vous utilisez. S'il demande un mot de passe, vous devez utiliser le même mot de passe dans le fichier database.yml. 

Vérifiez ce lien http://guides.rubyonrails.org/configuring.html#configuring-a-postgresql-database Et Ruby on Rails: Comment puis-je modifier database.yml pour postgresql?

En espérant que ces liens vous aident 

2
KJ_kaka

essayez de spécifier pour quel environnement Rails vous souhaitez le faire, par exemple: 

Rails_ENV=test rake db:setup
1
ussferox

Mon ami, j'avais le même problème. Ma solution a été ajoutée les informations d'identification pour chaque environnement et activer l'hôte dans la valeur localhost ..

comme ça:

development:
<<: *default
database: SM_development
username: user
password: xxxx

Host: localhost

test:
<<: *default
database: SM_test
username: user
password: xxxxxx

production:
<<: *default
database: SM_production
username: user
password: xxxxxx
1
Eduard Avendaño

no password suppliedsignifie que vous n'avez pas fourni de mot de passe au serveur posgresql à partir de votre database.yml.

Essayez de vous connecter au serveur posgresql sous la forme pgadmin ou terminal. Ajoutez le même mot de passe (que vous avez utilisé pour vous connecter via terminal/pgadmin) à votre database.yml.

Maintenant essaye:

Rails_ENV=TEST bundle exec rake db:setup

0
RAJ

si vous ne souhaitez pas spécifier d'authentification, essayez de supprimer username: password: du fichier .yml.

0
Som Poddar

no password supplied signifie qu'un mot de passe est requis mais que vous n'avez spécifié aucun mot de passe. Ajoutez le mot de passe correct à votre fichier database.yml.

0
infused

Essayez de fournir un mot de passe "vide" en utilisant des guillemets:

password: ""
0
Luca B.