PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Ho dimenticato la password che ho inserito durante l'installazione di postgres

  1. trova il file pg_hba.conf - potrebbe trovarsi, ad esempio in /etc/postgresql-9.1/pg_hba.conf .

    cd /etc/postgresql-9.1/

  2. Eseguire il backup

    cp pg_hba.conf pg_hba.conf-backup

  3. inserisci la riga seguente (come prima riga non commentata o come unica):

Per tutte le occorrenze di seguito (locale e host), escludi la sezione replica se non ne hai, deve essere modificata come segue, non dovrebbe essere presente MD5 o l'autenticazione peer.

local  all   all   trust
  1. riavvia il tuo server PostgreSQL (ad es. su Linux :)

    sudo /etc/init.d/postgresql restart

    Se il servizio (daemon) non avvia i rapporti nel file di registro:

    le connessioni locali non sono supportate da questa build

    dovresti cambiare

    local all all trust

    a

    host all all 127.0.0.1/32 trust

  2. ora puoi connetterti come qualsiasi utente. Collegati come superutente postgres (nota, il nome del superutente potrebbe essere diverso nella tua installazione. In alcuni sistemi è chiamato pgsql , per esempio. )

    psql -U postgres

    o

    psql -h 127.0.0.1 -U postgres

    (nota che con il primo comando non sarai sempre connesso all'host locale)

  3. Reimposta password ("sostituisci mio_nome_utente con postgres poiché stai reimpostando postgres utente)

    ALTER USER my_user_name with password 'my_secure_password';

  4. Ripristina il vecchio pg_hba.conf poiché è molto pericoloso da tenere in giro

    cp pg_hba.conf-backup pg_hba.conf

  5. riavviare il server, in modo da funzionare con il pg_hba.conf sicuro

    sudo /etc/init.d/postgresql restart

Ulteriori letture su quel file pg_hba:http://www.postgresql.org/docs/9.1/static/auth-pg-hba-conf.html