Kompleksowe rozwiązania dla biznesu

Reset hasła Postgresql na Windows

Reset hasła Postgresql na Windows

Krótki poradnik po tym jak odzyskać hasło do Postgresa po tym jak je zapomnimy. Reinstalacja bazy danych (z doświadczenia :)) nie pomaga w takim przypadku.

Środowisko: Windows XP, Wersja Postgresa: 9.2

Metoda 1

Z poziomu administratora wpisać w wierszu poleceń komendę

net user postgres postgres

U mnie nie zadziałało, bo nie powstał nigdy taki użytkownik w systemie.

Metoda 2 (pewniejsza)

Cała zabawa sprowadza się do drobnych modyfikacji pliku pg_hba.conf.

Otóż naszą linijkę z połączeniami IPv4:

# IPv4 local connections:
host all all all md5

zamieniamy na:

# IPv4 local connections:
host all all 127.0.0.1/32 trust

Restartujemy serwer Postgresql. Wskakujemy do wiersza poleceń. Uruchamiamy konsole poleceniem:

psql -U postgres

i powinniśmy dostać się do konsoli co objawia się tak:

postgres=#

Teraz tylko pozostaje ustawić hasło poleceniem SQLowym:

ALTER USER postgres WITH ENCRYPTED PASSWORD 'password';

i to wszystko.

Czasami podczas próby dostania się do samej konsoli możemy natknąć się na następujący błąd:

psql: FATAL: role "postgres" does not exist

Wtedy po prostu tworzymy taką rolę poleceniem:

createuser.exe -s postgres

i ponownie wchodzimy do konsoli i ustawiamy sobie hasło poleceniem SQL.