V tomto tutoriálu prozkoumáme, jak resetovat hesla pro uživatele se serverem PostgreSQL. Je dobré si zapamatovat, že databázovými uživateli se v tomto případě rozumí uživatelé s přístupem k databázovému stroji. Proto to nezahrnuje uživatelská data pro danou aplikaci.
Metoda 1: Použití nástroje PSQL
Nejběžnějším způsobem resetování hesla uživatele v PostgreSQL je přihlášení jako superuživatel (Postgres) pomocí nástroje PSQL.
Spusťte novou relaci terminálu a spusťte následující příkaz pro přístup k databázi PostgreSQL jako superuživatel:
$ psql -V postgres
Daný příkaz vás vyzve k zadání hesla superuživatele, jak je definováno během nastavení serveru.
Po přihlášení do rozhraní příkazového řádku PostgreSQL můžete použít příkaz ALTER USER k resetování hesla konkrétního uživatelského jména.
Syntaxe příkazu je následující:
ZMĚŇTE UŽIVATELSKÉ uživatelské jméno POMOCÍ HESLA 'nové heslo' ;Předpokládejme například, že chceme resetovat heslo pro uživatelské jméno s názvem „linuxhint“. Dotaz můžeme spustit následovně:
ALTER USER linuxhint S HESLEM 'Heslo' ;
Heslo byste měli uzavřít do jednoduchých uvozovek, zejména pokud heslo obsahuje speciální znaky.
Jakmile je příkaz úspěšně proveden, můžete se odhlásit z rozhraní PSQL pomocí následujícího příkazu:
\qMetoda 2: Použití grafického rozhraní PgAdmin
Heslo daného databázového uživatele můžete také resetovat pomocí grafického rozhraní pgAdmin.
Chcete-li zjistit, jak resetovat uživatelské heslo pomocí pgAdmin, postupujte podle zde uvedených kroků:
A. Spusťte nástroj pgAdmin a přihlaste se pomocí správných přihlašovacích údajů.
b. Připojte se k cílovému serveru PostgreSQL pomocí přihlašovacích údajů superuživatele.
C. V podokně Průzkumník objektů na levé straně rozbalte skupinu „Servery“ a přejděte do cílové databáze.
d. Rozbalte uzel „Login/Group Roles“ a najděte uživatele, jehož heslo chcete resetovat. V tomto případě si přejeme resetovat heslo pro uživatele „linuxhint“.
E. Klikněte pravým tlačítkem myši na vybraného uživatele a z kontextové nabídky vyberte „Vlastnosti“.
F. V okně „Vlastnosti“ přejděte na kartu „Definice“.
G. Zadejte nové heslo do pole „Heslo“ pro definovaného uživatele.
h. Nakonec klikněte na „Uložit“ pro uložení změn.
To by mělo nastavit nově poskytnuté heslo pro cílového uživatele.
Metoda 3: Úprava konfiguračního souboru hesla PostgreSQL
Pokud jste zapomněli heslo k účtu superuživatele, můžete heslo resetovat úpravou konfiguračního souboru hesla PostgreSQL.
Začněte vyhledáním datového adresáře pro vaši instalaci PostgreSQL. Cesta k tomuto adresáři se liší v závislosti na vašem operačním systému a nainstalované verzi PostgreSQL.
V datovém adresáři vyhledejte soubor pg_hba.conf a upravte jej pomocí textového editoru, který si zvolíte.
Upravte všechna místní připojení z md5 na důvěryhodná. To říká PostgreSQL, aby důvěřoval všem příchozím připojením z místního počítače bez hesla.
# TYPE DATABASE USER ADRESA METODA# 'local' je pouze pro připojení soketu domény Unix
místní všechny všechny důvěra
# Místní připojení IPv4:
hostitel všechny všechny 127.0.0.1/32 důvěra
# Místní připojení IPv6:
hostitel všechny všechny ::1/128 důvěřovat
# Povolit replikační připojení z localhost uživatelem s
# privilegium replikace.
místní replikace všechny důvěra
hostitel replikace vše 127.0.0.1/32 důvěra
hostitel replikace vše ::1/128 důvěra
Po dokončení je třeba restartovat server PostgreSQL, aby se změny projevily. Poté se můžete přihlásit k serveru PostgreSQL pomocí uživatele Postgres bez hesla.
Závěr
Prozkoumali jsme různé metody a techniky, které můžeme použít k resetování hesla uživatele v PostgreSQL.