Android

Jak nainstalovat postgresql na Debian 10

Howto install Ambari on Ubuntu

Howto install Ambari on Ubuntu

Obsah:

Anonim

PostgreSQL, často známé jednoduše jako Postgres, je open-source univerzální objektově-relační systém správy databází. Má mnoho výkonných funkcí, jako jsou online zálohy, obnova v čase, vnořené transakce, dotazy SQL a JSON, řízení souběžnosti více verzí (MVCC), asynchronní replikace a další.

Tento tutoriál vás provede kroky instalace databázového serveru PostgreSQL na Debian 10. Rovněž se podíváme na základy základní správy databází.

Instalace PostgreSQL

V době psaní tohoto článku je nejnovější verze PostgreSQL dostupná z výchozích repozitářů Debianu PostgreSQL verze 11.5.

Chcete-li nainstalovat PostgreSQL na váš server Debian, proveďte následující kroky jako root nebo uživatel s právy sudo:

  1. Začněte aktualizací indexu balíčku APT:

    sudo apt update

    Nainstalujte server PostgreSQL a balíček Contrib, který poskytuje další funkce pro databázi PostgreSQL:

    sudo apt install postgresql postgresql-contrib

    Po dokončení instalace se spustí služba PostgreSQL. Chcete-li ověřit instalaci, vytiskněte verzi serveru pomocí nástroje psql :

    sudo -u postgres psql -c "SELECT version();"

    Výstup by měl vypadat asi takto:

    PostgreSQL 11.5 (Debian 11.5-1+deb10u1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit

psql je interaktivní terminálový program, který umožňuje interakci se serverem PostgreSQL.

Role PostgreSQL a metody autentizace

PostgreSQL zpracovává přístupová oprávnění k databázi pomocí konceptu rolí. Podle toho, jak nastavíte roli, může představovat uživatele databáze nebo skupinu uživatelů databáze.

PostgreSQL podporuje několik metod autentizace. Nejčastěji používané metody jsou:

  • Důvěra - Role se může připojit bez hesla, pokud jsou splněna kritéria definovaná v pg_hba.conf.Password - Role se může připojit poskytnutím hesla. Hesla lze uložit jako scram-sha-256 md5 a password (čistý text) Ident - Podporováno pouze pro připojení TCP / IP. Funguje tak, že získá uživatelské jméno operačního systému klienta, s volitelným mapováním uživatelského jména. Vyrovnejte - Stejné jako Ident, ale je podporováno pouze u místních připojení.

Ověřování klienta PostgreSQL je definováno v konfiguračním souboru s názvem pg_hba.conf . Pro místní připojení je PostgreSQL nastaveno na použití metody peer autentizace.

Po instalaci PostgreSQL se automaticky vytvoří uživatel „postgres“. Tento uživatel je superuživatelem instance PostgreSQL a je rovnocenný s rootovským uživatelem MySQL.

Chcete-li se přihlásit k serveru PostgreSQL jako „postgres“, přepněte na postgres uživatele a pomocí nástroje psql příkaz PostgreSQL:

sudo su - postgres psql

Odtud můžete komunikovat se serverem PostgreSQL. Chcete-li ukončit typ prostředí PostgreSQL:

\q

Příkaz sudo můžete použít k přístupu k výzvě PostgreSQL bez přepnutí uživatelů:

sudo -u postgres psql

Uživatel postgres se obvykle používá pouze z localhost.

Vytváření role PostgreSQL a databáze

Příkaz createuser umožňuje vytvářet nové role z příkazového řádku. Nové role mohou vytvářet pouze superuživatelé a role s oprávněním CREATEROLE .

V následujícím příkladu vytvoříme novou roli s názvem kylo , databázi s názvem kylodb a kylodb této databázi oprávnění.

  1. Nejprve vytvořte roli vydáním následujícího příkazu:

    sudo su - postgres -c "createuser kylo"

    Dále vytvořte databázi pomocí příkazu createdb :

    sudo su - postgres -c "createdb kylodb"

    Chcete-li udělit oprávnění uživateli v databázi, připojte se k prostředí PostgreSQL:

    sudo -u postgres psql

    Spusťte následující dotaz:

    grant all privileges on database kylodb to kylo;

Povolit vzdálený přístup k serveru PostgreSQL

Ve výchozím nastavení server PostgreSQL poslouchá pouze na místním rozhraní 127.0.0.1 .

Otevřete konfigurační soubor postgresql.conf a přidejte listen_addresses = '*' v sekci CONNECTIONS AND AUTHENTICATION listen_addresses = '*' . To dá serveru pokyn, aby poslouchal všechna síťová rozhraní.

sudo nano /etc/postgresql/11/main/postgresql.conf /etc/postgresql/11/main/postgresql.conf

#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;

Uložte soubor a restartujte službu PostgreSQL, aby se změny projevily:

sudo service postgresql restart

Ověřte změny pomocí obslužného programu ss :

ss -nlt | grep 5432

LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*

Výstup by měl ukazovat, že server PostgreSQL poslouchá na všech rozhraních (0.0.0.0).

Posledním krokem je konfigurace serveru tak, aby akceptoval vzdálené přihlášení úpravou souboru pg_hba.conf .

Níže uvádíme několik příkladů, které ukazují různé případy použití:

/etc/postgresql/11/main/pg_hba.conf

# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using an md5 password host all jane 0.0.0.0/0 md5 # The user jane will be able to access only the janedb from all locations using an md5 password host janedb jane 0.0.0.0/0 md5 # The user jane will be able to access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust

Závěr

Ukázali jsme vám, jak nainstalovat a nakonfigurovat PostgreSQL na Debian 10. Další informace o tomto tématu najdete v dokumentaci PostgreSQL.

debian postgresql databáze