pg_dump: [archiver (db)] Verbindung zur Datenbank "dbase" fehlgeschlagen: FATAL: Peer authentication failed for user "postgres"
Gelöst: ich Hinzugefügt .pgpass im home.
Habe ich die Zeile:
host all all 127.0.0.1/32 md5
in /etc/postgresql/9.4/main/pg_hba.conf, aber wenn ich laufen:
# pg_dump -U postgres-dbase -f dbase.sql
Bekomme ich:
pg_dump: [archiver (db)] connection to database "dbase" failed: FATAL: Peer authentication failed for user "postgres"
pg_dump -U postgres -h localhost dbase -f dbase.sql
- "Peer-Authentifizierung" bedeutet, dass es vergleichen Sie Ihren Datenbank-Benutzernamen, die gegen Ihren Linux-Benutzernamen. Es sollte funktionieren, wenn Sie angemeldet sind, als
postgres
. Sie wollen wahrscheinlich nicht zu schlagen, dassmd5
Regel inpg_hba
alspostgres
Datenbank-Benutzer in der Regel nicht über ein Passwort. - zusammengefasst all die Dinge.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das Problem, das Sie haben, ist, dass, wenn u dont definieren der Host -, system entscheiden wird.
explizite hinzufügen "-h localhost", wird diese fix it -
psql "dbname='<database_name>' user='<user_name>' password='<user_password>' host='localhost'" -f "<path_to_query_in_sql>"
Wenn das hinzufügen -h localhost nicht funktioniert, können Sie versuchen Sie -h 127.0.0.1