În primul rând, este important să înțelegeți că pentru majoritatea distribuțiilor Unix, Utilizatorul implicit Postgres nu necesită și nu folosește o parolă pentru autentificare. În schimb, în funcție de cât de Postgres a fost inițial instalat si ce versiune ai folosit, metoda de autentificare implicit va fi ident
sau peer
.,
ident
autentificarea utilizează serverul de identificare al sistemului de operare care rulează la portul TCP 113 pentru a verifica acreditările utilizatorului.
peer
autentificare pe de altă parte, este folosit pentru conexiuni locale și verifică dacă s-a logat de utilizator a sistemului de operare se potrivește cu numele de utilizator pentru baza de date Postgres.pentru majoritatea sistemelor, Utilizatorul implicit Postgres este postgres
și nu este necesară o parolă pentru autentificare., Astfel, pentru a adăuga o parolă, trebuie mai întâi să ne conectăm și să ne conectăm ca utilizator postgres
.
$ sudo -u postgres psql
Dacă ați conectat cu succes și vizualizați psql
prompt, sari jos de la Schimbarea Parolei secțiune.
Dacă ați primit o eroare care să ateste că baza de date „postgres” nu există, încercați să vă conectați la template1
bază de date în loc și dacă de succes, continua pentru a Schimba Parola.,
$ sudo -u postgres psql template1
Eroare de Autentificare
Dacă primiți o eroare de autentificare atunci când încearcă să se conecteze la psql
client, ar putea fi necesar pentru a modifica Postgres autentificare config (pg_hfa.conf).
Deschide fișierul de configurare, de obicei, situat la /etc/postgresql/#.#/main/pg_hba.conf
, unde #.#
este Postgres versiunea pe care o utilizați:
$ sudo nano /etc/postgresql/9.3/main/pg_hba.conf
auth config este o listă de reguli de autentificare., Derulați în jos fișierul până când localizați prima linie care afișează utilizatorul postgres
în a treia coloană (dacă există o astfel de linie). Decomentați linia, dacă este necesar (scoateți și virgulă), sau în caz contrar, în cazul în care linia lipsește în întregime, adăugați următoarea linie în partea de sus a fișierului și salvați modificările:
local all postgres peer
Acest autentificarea regulă, pur și simplu, spune Postgres că pentru conexiuni locale stabilite pentru toate bazele de date pentru utilizator postgres
, autentifica folosind peer
protocol.,
Notă: Unele versiuni mai vechi de Postgres preferă metoda implicită de autentificare a ident, dar majoritatea instalărilor moderne vor utiliza peer așa cum este specificat mai sus. Este posibil să fie nevoie să testați ambele dacă rezultatele dvs. diferă.acum, cu fișierul de configurare actualizat, repetați pașii din secțiunea Conectare și conectare ca utilizator implicit pentru a încerca să vă conectați la postgres
utilizator. După ce ați reușit, continuați cu schimbarea parolei.,
Schimbare Parola
Cu o conexiune stabilit acum la Postgres la psql
prompt, problema ALTER USER
comandă pentru a schimba parola pentru postgres
utilizator:
postgres=# ALTER USER postgres PASSWORD 'myPassword';ALTER ROLE
Daca va avea succes, Postgres va afișa o confirmare a ALTER ROLE
cum am văzut mai sus.
în cele din urmă, ieșiți din clientul psql
folosind comanda \q
.
postgres=# \q
ați terminat., Implicit postgres
utilizator are acum o parolă asociată cu contul pentru utilizarea în alte aplicații.