Wenn ich renne: Rake db: setup
ich bekomme:
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
Meine Datenbank.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
Ändern Sie bereits meine pg_hba.conf wie in dieser Frage: Beim Versuch, Postgres für die ror-App einzurichten, wird der Fehler angezeigt - fe_sendauth: Kein Kennwort angegeben Aber es hilft überhaupt nicht.
Es ist ein Problem mit der Datenbankkonnektivität.
Versuchen Sie, eine direkte Verbindung mit der Datenbank herzustellen, die ur Sie verwendet. Wenn Sie nach einem Kennwort gefragt werden, sollten Sie dasselbe Kennwort in der Datei database.yml verwenden.
Überprüfen Sie diesen Link http://guides.rubyonrails.org/configuring.html#configuring-a-postgresql-database Und Ruby on Rails: Wie kann ich database.yml für postgresql bearbeiten?
Ich hoffe, diese Links helfen Ihnen
geben Sie an, für welche Rails-Umgebung Sie dies tun möchten, z.
Rails_ENV=test rake db:setup
Mein Freund, ich hatte das gleiche Problem. Bei meiner Lösung wurden die Anmeldeinformationen für jede Umgebung hinzugefügt und der Host mit dem Wert localhost aktiviert.
so was:
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
no password supplied
bedeutet, dass Sie dem posgresql
-Server kein Kennwort von Ihrer Datenbank.yml übermittelt haben.
Versuchen Sie, sich mit dem Posgresql-Server von pgadmin oder dem Terminal zu verbinden. Fügen Sie dasselbe Kennwort (das Sie zum Anmelden über terminal/pgadmin verwendet haben) zu Ihrer Datenbank.yml hinzu.
Versuchen Sie jetzt:
Rails_ENV=TEST bundle exec rake db:setup
wenn Sie keine Authentifizierung angeben möchten, entfernen Sie username:
password:
aus der .yml-Datei.
no password supplied
bedeutet, dass ein Kennwort erforderlich ist, Sie jedoch kein Kennwort angegeben haben. Fügen Sie der Datenbank.yml-Datei das richtige Kennwort hinzu.
Versuchen Sie, ein "leeres" Kennwort mit Anführungszeichen anzugeben:
password: ""