sql >> Databáze >  >> RDS >> PostgreSQL

Jak nastavit výchozí uživatelské heslo v PostgreSQL

Za prvé, je důležité pochopit, že pro většinu unixových distribucí výchozí uživatel Postgres ani nevyžaduje ani nepoužívá heslo pro autentizaci. Místo toho, v závislosti na tom, jak byl Postgres původně nainstalován a jakou verzi používáte, bude výchozí metoda ověřování buď ident nebo peer .

ident ověřování používá identifikační server operačního systému běžící na portu TCP 113 k ověření přihlašovacích údajů uživatele.

peer autentizace se na druhou stranu používá pro lokální připojení a ověřuje, že přihlášené uživatelské jméno operačního systému odpovídá uživatelskému jménu pro databázi Postgres.

Přihlaste se a připojte se jako výchozí uživatel

Pro většinu systémů je výchozí uživatel Postgres postgres a pro ověření není vyžadováno heslo. Pro přidání hesla se tedy musíme nejprve přihlásit a připojit jako postgres uživatel.

$ sudo -u postgres psql

Pokud jste se úspěšně připojili a prohlížíte psql přejděte dolů na Změna hesla sekce.

Pokud se zobrazí chyba oznamující, že databáze „postgres“ neexistuje, zkuste se připojit k template1 místo toho, a pokud bude úspěšný, pokračujte částí Změna hesla .

$ sudo -u postgres psql template1

Chyba ověření

Pokud se při pokusu o připojení k psql zobrazí chyba ověření klienta, možná budete muset změnit konfigurační soubor Postgres autentizace (pg_hfa.conf).

Otevřete konfigurační soubor, který se obvykle nachází na adrese /etc/postgresql/#.#/main/pg_hba.conf , kde #.# je verze Postgres, kterou používáte:

$ sudo nano /etc/postgresql/9.3/main/pg_hba.conf

Konfigurační soubor auth je seznam pravidel ověřování. Posouvejte soubor dolů, dokud nenajdete první řádek zobrazující postgres uživatel ve třetím sloupci (pokud takový řádek existuje). V případě potřeby odkomentujte řádek (odstraňte středník), nebo pokud řádek zcela chybí, přidejte na začátek souboru následující řádek a uložte změny:

local all postgres peer

Toto autentizační pravidlo jednoduše říká Postgresu, že pro lokální připojení vytvořená ke všem databázím pro uživatele postgres , ověřte pomocí peer protokol.

Poznámka:Některé starší verze Postgresu preferují výchozí metodu ověřování ident, ale většina moderních instalací bude místo toho využívat peer, jak je uvedeno výše. Pokud se vaše výsledky liší, možná budete muset otestovat oba.

Nyní s aktualizovaným konfiguračním souborem zopakujte kroky v části Přihlášení a připojení jako výchozí uživatel sekce, ke které se chcete pokusit připojit jako výchozí postgres uživatel. Jakmile bude úspěšný, pokračujte ve změně hesla.

Změna hesla

Nyní je navázáno připojení k Postgresu na psql zadejte ALTER USER příkaz ke změně hesla pro postgres uživatel:

postgres=# ALTER USER postgres PASSWORD 'myPassword';
ALTER ROLE

Pokud bude úspěšný, Postgres vypíše potvrzení ALTER ROLE jak je vidět výše.

Nakonec ukončete psql klienta pomocí \q příkaz.

postgres=# \q

máte hotovo. Výchozí postgres uživatel má nyní k účtu přidružené heslo pro použití ve vašich dalších aplikacích.


  1. Jak CHARSET() funguje v MariaDB

  2. seriál v postgresu se zvyšuje, i když jsem přidal na konfliktu nedělat nic

  3. Jak uniknout z jediné citace, speciálních znaků v MySQL

  4. Poddotaz Oracle nevidí proměnnou z vnějšího bloku o 2 úrovně výše