2017-06-03 6 views
2

Ich bin mit Postgres 9.5 auf Windows 7.Superuser abgelaufen und ist der einzige Benutzer

Ich habe nur ein Benutzer postgres und I definiert ein Ablaufdatum für diesen Benutzer.

Jetzt versuche ich zu verbinden, nachdem abgelaufen ist und ich kann nicht, so weiß jemand wie den Ablauf vom Superuser abbrechen, damit ich Postgres nicht neu installieren muss.

Ich habe versucht, pg_hba.conf zu bearbeiten, um trust für postgres aber immer noch das gleiche Problem zu ermöglichen.

+1

[Ich habe das Passwort vergessen, das ich bei der Postgres-Installation eingegeben habe] (https://Stackoverflow.com/q/10845998/1995738) – klin

+0

, aber ich kann keine Verbindung mit dem Befehl psql -U postgres – Cherif

+2

Die akzeptierte Antwort lesen. – klin

Antwort

3

den Server im Single-User-Modus starten Sie das fehlerhafte "Ablaufdatum" mit zu beheben:

ALTER ROLE postgres VALID UNTIL 'infinity'; 

The manual:

Der postgres Befehl [...] Wenn in Single- aufgerufen Benutzermodus aus der Shell, kann der Benutzer Abfragen eingeben und die Ergebnisse werden auf dem Bildschirm gedruckt, aber in einem Formular, das für Entwickler als Endnutzer mehr nützlich ist. Im Einzelbenutzermodus, , wird der Sitzungsbenutzer auf den Benutzer mit der ID 1, festgelegt, und diesem Benutzer werden implizite Superuser-Berechtigungen erteilt. Dieser Benutzer muss nicht wirklich existieren, so kann der Einzelbenutzermodus verwendet werden, um bestimmte Arten von versehentlichen Schäden an den Systemkatalogen manuell wiederherzustellen.

Fett Hervorhebung meins.

Beiseite: Es ist eine ziemlich "kreative" Idee, den Superuser postgres ablaufen zu lassen. IOW: nicht.

+0

Sieht gut aus ich werde es versuchen Ich habe gerade versucht, um zu sehen, ob der Super-Benutzer abgelaufen sein kann Dank – Cherif

+0

nur eine Frage, wenn ich dies mit cmd-Fenster im Adminstration-Modus ausgeführt hat dies nicht zulassen. Ich habe die Git Bash Shell verwendet und es hat gut funktioniert. Haben Sie eine Idee – Cherif

+1

ok es ist in Ordnung, ich habe mit cmd ohne Administration privelage verwendet und es hat gut funktioniert. Danke – Cherif

Verwandte Themen