Reset password di PostgreSQL in Windows
Se, come a me, capita di dimenticare le password, questa guida fa per te!
In questo breve articolo, vedremo passo dopo passo come reimpostare la password di PostgreSQL in Windows.
Procedimento
Per qualche motivo, dopo aver installato PostgreSQL, to capitasse di dimenticare la password dell’utentepostgres
, questi sono i passi da seguire.
PostgreSQL in Windows utilizza il file di configurazione pg_hba.conf
memorizzato nella directory dei dati del database (ad esempio, C:\Program Files\PostgreSQL\[VERSION]\data
) per controllare l’autenticazione tramite il client.
Non a caso, hba significa host-based authentication!
Attenzione a cambiare la versione di PostgreSQL nel precedente path con quella che effettivamente avete installato: questa guida vale sia per tutte le installazioni che vanno dalla 9.6 alla 13.
Per reimpostare la password per l’utente postgres
, è necessario modificare alcuni parametri in questo file di configurazione, accedere come postgres senza utilizzare alcuna password e reimpostarla.
Per prima cosa, andremo a fare il backup del file pg_hba.conf
copiandolo in una posizione diversa o semplicemente rinominandolopg_hba.conf.bk
Path del file pg_hba.conf per PostgreSQL13
Adesso passiamo alla modifica del pg_dba.conf
: lo apriamo con un qualsiasi editor di testo e cambiamo tutte le voci da scram-sha-256 o md5 a trust. In questo modo, sarà possibile accedere al server del database PostgreSQL senza utilizzare una password.
File pg_hba.conf prima della modifica
File pg_hba.conf dopo della modifica
Ora è il momento di riavviare Postgres: per farlo, possibile usare il tool di gestione dei Servizi di Windows oppure la riga di comando eseguendo questo comando:
pg_ctl -D "C:\Program Files\PostgreSQL\[VERSION]\data" restart
Strumento di gestione dei Servizi di Windows
Dopo aver riavviato PostgreSQL, potremo finalmente accedere con l’utente postgres senza alcuna password: utilizziamo quindi PgAdmin (se installato) oppure la riga di comando per loggarci:
Login con PgAdmin
psql -U postgres
Questo è il momento di cambiare password. Eseguiamo la seguente query e, soprattutto, segnamocela!
ALTER USER postgres WITH PASSWORD 'new_password';
Ultimo step è quello di ripristinare il file pg_dba.conf
: andiamo quindi a chiudere sia il client che la riga di comando, sostituiamo il file di cui avevamo fatto il backup e riavviamo nuovamente il server del database PostgreSQL.
Per verificare che sia andato tutto a buon fine, proviamo a connetterci al server del database PostgreSQL con la nuova password.
Funziona? Ottimo!