Ich versuche Capistrano für eine Rails-Anwendung mit Postgres auf Ubuntu 14 zu laufen, lief ich in ein Passwort Fehler bei rake db:migrate
-Capistrano, Schienen, PG :: ConnectionBad: fe_sendauth: kein Passwort
DEBUG [2823f146] Command: cd /home/ben/apps/mll/releases/20160414014303 && (export RBENV_ROOT="$HOME/.rbenv" RBENV_VERSION="2.0.0-p645" RAILS_ENV="production" ; $HOME/.rbenv/bin/rbenv exec bundle exec rake db:migrate)
DEBUG [2823f146] rake aborted!
PG::ConnectionBad: fe_sendauth: no password supplied
Ich habe jede Lösung für ähnliche Beiträge ausprobiert, aber kein Glück. Für Kicks Ich habe auch versucht, genau das Kommando in der Remote-App dir laufen und bekam folgendes:
PG::ConnectionBad: FATAL: password authentication failed for user "mll"
FATAL: password authentication failed for user "mll"
Das ist interessant, weil es meine Datenbanknamen als meinen Benutzernamen verwenden. Sehen Sie database.yml
unten, so für die Hölle davon habe ich eine mll
Rolle hinzugefügt, und siehe da es funktioniert, wenn nur rake db:migrate
läuft. Ich habe versucht, Capistrano wieder mit dieser neuen Rolle zu spielen und immer noch kein Glück.
Ist es eine vernünftige Schätzung, dass der Benutzername nicht richtig zugegriffen/gespeichert wird? Kann ich das testen? Ich manuell ALTER ROLE ben WITH PASSWORD 'mypw';
für meine ben
und mll
Rollen und nichts.
Mein database.yml:
defaults: &default
adapter: sqlite3
encoding: utf8
development:
<<: *default
database: db/development.sqlite3
test:
<<: *default
database: db/development.sqlite3_test
production:
<<: *default
host: localhost
adapter: postgresql
encoding: utf8
database: mll
pool: 5
username: <%= ENV['DATABASE_USER'] %>
password: <%= ENV['DATABASE_PASSWORD'] %>
\ ich:
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------+-----------
ben | Superuser, Create role, Create DB | {}
mll | Superuser, Create role, Create DB | {}
postgres | Superuser, Create role, Create DB, Replication | {}
ich md5
zu trust
einigen Leuten geholfen lesen zu ändern, habe ich versucht, aber ich bin nicht sicher, wie alle neu zu starten Befehle, die ich gesehen habe, haben nicht für mich funktioniert.
pg_hba.conf:
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
local all all peer
host all all 127.0.0.1/32 md5
host all all ::1/128 md5
neu starten kann ich wie ein Dummkopf fühlen, habe es endlich SQL neu zu starten mit 'SELECT pg_reload_conf();' und Scheiße, die funktionierte. Vielen Dank. – Ben
Kein Problem, wir waren alle dort. –
Was ist mit der Produktion, irgendwelchen Ressourcen/Themen, über die ich nachlesen kann, wie ich das sicher machen kann und nicht auf dieses Problem stoße? – Ben