Ich habe PostgreSQL 8.4, Postgres-Client und Pgadmin 3 installiert. Die Authentifizierung für den Benutzer "postgres" ist sowohl für den Konsolen-Client als auch für Pgadmin fehlgeschlagen. Ich habe Benutzer als "postgres" und Passwort "postgres" eingegeben, weil es vorher funktioniert hat. Aber jetzt ist die Authentifizierung fehlgeschlagen. Ich habe es vorher ein paar Mal ohne dieses Problem gemacht. Was sollte ich tun? Und was passiert?
psql -U postgres -h localhost -W
Password for user postgres:
psql: FATAL: password authentication failed for user "postgres"
FATAL: password authentication failed for user "postgres"
postgresql
ubuntu
pgadmin
I159
quelle
quelle
ALTER
Schritt , dann meinepg_hba.conf
Datei bearbeiten und dann postgres neu starten .Antworten:
Wenn ich mich richtig erinnere, hat der Benutzer standardmäßig
postgres
kein DB- Passwort unter Ubuntu festgelegt. Das bedeutet, dass Sie sich nur mit dempostgres
Benutzerkonto des Betriebssystems bei diesem Konto anmelden können .Angenommen, Sie haben
root
Zugriff auf die Box, die Sie ausführen können:Wenn dies mit einem
database "postgres" does not exists
Fehler fehlschlägt , befinden Sie sich höchstwahrscheinlich nicht auf einem Ubuntu- oder Debian-Server :-) In diesem Fall fügen Sie einfachtemplate1
den Befehl hinzu:Wenn einer dieser Befehle mit einem Fehler fehlschlägt,
psql: FATAL: password authentication failed for user "postgres"
überprüfen Sie die Datei/etc/postgresql/8.4/main/pg_hba.conf
: Es muss eine Zeile wie diese als erste Zeile ohne Kommentar vorhanden sein:Für neuere Versionen von PostgreSQL
ident
könnte das tatsächlich seinpeer
. Das ist auch in Ordnung.Innerhalb der
psql
Shell können Sie dem DB-Benutzerpostgres
ein Passwort geben:Sie können die
psql
Shell durch Eingabe CtrlDoder mit dem Befehl verlassen\q
.Jetzt sollten Sie in der Lage sein, pgAdmin ein gültiges Passwort für den DB-Superuser zu geben, und es wird auch glücklich sein. :-)
quelle
ident
, damit die ersten Schritte funktionieren. Wenn Sie es bereits auf md5 oder etwas anderes eingestellt haben, können Sie sich nicht automatisch anmelden.Die Reaktion der Mitarbeiter ist korrekt, aber wenn Sie weiter automatisieren möchten, können Sie Folgendes tun:
$ sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"
Erledigt! Sie haben User = postgres und password = postgres gespeichert.
Wenn Sie kein Passwort für den Benutzer postgres ubuntu haben, gehen Sie wie folgt vor:
$ sudo passwd postgres
quelle
Dies war frustrierend. Die meisten der oben genannten Antworten sind korrekt, es wird jedoch nicht erwähnt, dass Sie den Datenbankdienst neu starten müssen, bevor die Änderungen in der Datei pg_hba.conf wirksam werden.
Wenn Sie also die oben genannten Änderungen vornehmen:
dann starten Sie als root (auf CentOS seine etwas wie Service Service postgresql-9.2 Neustart) jetzt sollten Sie die db , wenn der Benutzer Postgres zugreifen können
Hoffe, dies fügt Informationen für neue Postgres-Benutzer hinzu
quelle
sudo service postgresql restart
sudo systemctl restart postgresql.service
Bearbeiten Sie die Datei pg_hba.conf, z. B. mit
sudo emacs /etc/postgresql/9.3/main/pg_hba.conf
Ändern Sie alle Authentifizierungsmethoden in
trust
. Ändern Sie das Unix-Passwort für den Benutzer "postgres". Starten Sie den Server neu. Melden Sie sich mitpsql -h localhost -U postgres
dem gerade festgelegten Unix-Passwort an und verwenden Sie es. Wenn es funktioniert, können Sie die Datei pg_hba.conf auf die Standardwerte zurücksetzen.quelle
sudo su - postgres
, das nächste Kennwort für postgres db (und ggf. in der Shell), stellen Sie es auf "Sicheremd5
oderident
Methoden" wieder her und starten Sie es erneut, damit die Werte erhalten bleiben. Auf Cent / RedHat 9.4 befindet sich die Datei/var/lib/pgsql/9.4/data/pg_hba.conf
Für diejenigen, die es zum ersten Mal verwenden und keine Informationen über das Passwort haben, können sie die folgenden Schritte ausführen (vorausgesetzt, Sie sind auf Ubuntu):
Öffnen Sie die Datei pg_hba.conf in
/etc/postgresql/9.x/main
2. Bearbeiten Sie die folgende Zeile
zu
Starten Sie den Server neu
Schließlich können Sie sich wie in der Abbildung gezeigt ohne Passwort anmelden
Weitere Informationen finden Sie hier
quelle
Wenn Sie versuchen, die Postgres-Shell als Postgres-Benutzer anzumelden, können Sie die folgenden Befehle verwenden.
Wechseln Sie zu Postgres User
Login bei psql
Ich hoffe, das hilft
quelle
su - postgres
fragt nach einem Passwort für posgresql 9.5 unter Ubuntu 16.04su - postgres
ist der Befehl, den die offizielle Fedora- Dokumentation vorschlägt , aber auch ich erhalte eine Passwortabfrage. Um das zu umgehen , bin ich dieser Postgres-Forum-E-Mail gefolgt , die denselben Befehl wie die hier akzeptierte Antwort verwendet :sudo -u postgres psql
. Vergessen Sie nicht, den Datenbankserver zu starten und zu starten.Versuchen Sie, den Parameter -W nicht zu verwenden, und lassen Sie das Passwort leer. Manchmal wird der Benutzer ohne Kennwort erstellt.
Wenn das nicht funktioniert, setzen Sie das Passwort zurück. Es gibt verschiedene Möglichkeiten, dies funktioniert jedoch auf vielen Systemen:
quelle
Als Faustregel gilt: SIE SOLLTEN NIEMALS EIN PASSWORT FÜR DEN POSTGRES-BENUTZER EINSTELLEN .
Wenn Sie einen Superuser-Zugriff von pgAdmin benötigen, erstellen Sie einen anderen Superuser. Auf diese Weise können Sie, wenn die Anmeldeinformationen für diesen Superuser kompromittiert sind, jederzeit in den eigentlichen Datenbankhost ssh und den Superuser manuell mit löschen
quelle
Geben Sie diesen Befehl ein, sobald Sie sich in Ihrer Postgres-Shell befinden
Nachdem Sie diesen Befehl eingegeben haben, werden Sie aufgefordert, Ihr Passwort festzulegen. Legen Sie einfach das Passwort fest und versuchen Sie es dann.
quelle
Wenn Sie postgresql installieren, ist für den Benutzer postgres kein Kennwort festgelegt. Sie müssen es explizit unter Unix mithilfe des folgenden Befehls festlegen:
Sie werden nach Ihrem sudo-Passwort gefragt und dann nach einem neuen Postgres-Benutzerpasswort gefragt. Quelle
quelle
Ich wollte nur hinzufügen, dass Sie auch überprüfen sollten, ob Ihr Passwort abgelaufen ist.
Weitere Informationen finden Sie unter Fehlschlagen der Postgres-Kennwortauthentifizierung .
quelle
Hier sind einige Kombinationen, die ich versucht habe, mich anzumelden:
quelle
Ich hatte ein ähnliches Problem. Ubuntu ließ mich in der Konsole mit einem beliebigen Passwort für den Superuser anmelden. Außer wenn ich mit -h localhost im Befehl psql line verbunden bin.
Ich habe auch festgestellt, dass "localhost: 8080 / MyJSPSiteLogIn" - angezeigt wurde: Schwerwiegend: Authentifizierungsfehler mit Benutzer "Benutzer".
pg_hba.conf war ok.
Ich habe festgestellt, dass zwei Versionen von Postgres im selben Dienst ausgeführt werden.
Gelöst - Deinstallation der Inutil-Version.
quelle
Ich hatte ein ähnliches Problem. Beim Zugriff auf eine Datenbank wurde nach dem Aktualisieren des Kennworts "Kennwortauthentifizierung für Benutzer" postgres "in PGAdmin fehlgeschlagen" angezeigt
Lösung:
Hoffe, es wird Ihr Problem lösen
quelle
Ich hoffe, das wird Ihnen in Kürze helfen. Sie können das Passwort von postgres sql mit dem folgenden Befehl ändern.
Befehl
sudo -u postgres psql
Und als nächstes können Sie das Passwort aktualisieren
Befehl
Ändern Sie das Postgres-Passwort des Benutzers 'YOUR_NEW_PASSWORD'.
quelle