Android

Kako instalirati postgresql na debian 10

How to Install the Latest Python Version on Linux Mint, Debian and Ubuntu

How to Install the Latest Python Version on Linux Mint, Debian and Ubuntu

Sadržaj:

Anonim

PostgreSQL, često poznat i kao Postgres, je otvoreni izvorni sustav upravljanja objektno-relacijskim bazama otvorenog koda. Ima mnoštvo moćnih značajki kao što su internetske sigurnosne kopije, oporavak u vremenu, ugniježđene transakcije, SQL i JSON upit, kontrola istodobnosti u više verzija (MVCC), asinhrona replikacija i još mnogo toga.

Ovaj će vas vodič voditi kroz korake instaliranja PostgreSQL poslužitelja baza podataka na Debianu 10. Istražit ćemo i osnove osnovne administracije baza podataka.

Instaliranje PostgreSQL-a

U vrijeme pisanja ovog članka, najnovija verzija PostgreSQL-a dostupna iz zadanih Debianovih spremišta je PostgreSQL verzija 11.5.

Da biste instalirali PostgreSQL na svoj Debian poslužitelj, poduzmite sljedeće korake kao root ili korisnik s sudo povlasticama:

  1. Započnite ažuriranjem indeksa paketa APT:

    sudo apt update

    Instalirajte PostgreSQL poslužiteljski i doprinosni paket koji pruža dodatne značajke za PostgreSQL bazu podataka:

    sudo apt install postgresql postgresql-contrib

    Nakon instalacije dovršit će se PostgreSQL usluga. Za provjeru instalacije, pomoću alata psql ispisati verziju poslužitelja:

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

    Izlaz bi trebao izgledati ovako:

    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 interaktivni terminalski program koji vam omogućuje interakciju s PostgreSQL poslužiteljem.

PostgreSQL uloge i metode provjere autentičnosti

PostgreSQL obrađuje dopuštenja za pristup bazi podataka koristeći se konceptom uloga. Ovisno o tome kako ste postavili ulogu, ona može predstavljati korisnika baze podataka ili grupu korisnika baza podataka.

PostgreSQL podržava nekoliko metoda provjere autentičnosti. Najčešće korištene metode su:

  • Povjerenje - Uloga se može povezati bez lozinke, pod uvjetom da su zadovoljeni kriteriji definirani u pg_hba.conf.Password - Uloga se može povezati unošenjem lozinke. Lozinke se mogu pohraniti u scram-sha-256 md5 i password (jasan tekst) Ident - Samo se podržava za TCP / IP veze. Djeluje dobivanjem korisničkog imena operativnog sustava klijenta, s neobaveznim mapiranjem korisničkog imena.Peer - Isto kao i Identitet, ali je podržano samo na lokalnim vezama.

PostgreSQL provjera klijenta definirana je u konfiguracijskoj datoteci pod nazivom pg_hba.conf . Za lokalne veze PostgreSQL je postavljen za upotrebu metode peer identiteta.

Korisnik "postgres" automatski se stvara kad je instaliran PostgreSQL. Ovaj je korisnik superuser za PostgreSQL instancu i ekvivalentan je korijenskom korisniku MySQL.

Da biste se prijavili na PostgreSQL poslužitelj kao "postgres", prebacite se na korisničke postgres i pristupite PostgreSQL upita pomoću psql programa psql :

sudo su - postgres psql

Odavde možete komunicirati s poslužiteljem PostgreSQL. Da biste izašli iz vrste ljuske PostgreSQL:

\q

Pomoću naredbe sudo možete pristupiti brzini PostgreSQL bez prebacivanja korisnika:

sudo -u postgres psql

Korisnik postgres obično se koristi samo iz localhosta.

Stvaranje uloga i baze podataka PostgreSQL

Naredba createuser omogućava vam stvaranje novih uloga iz naredbenog retka. Samo CREATEROLE i uloge s CREATEROLE privilegijom mogu stvoriti nove uloge.

U sljedećem ćemo primjeru stvoriti novu ulogu zvanu kylo , bazu podataka nazvanu kylodb i dodijeliti privilegiji baze podataka ulogu.

  1. Prvo, stvorite ulogu izdavanjem sljedeće naredbe:

    sudo su - postgres -c "createuser kylo"

    Zatim kreirajte bazu podataka pomoću naredbe createdb :

    sudo su - postgres -c "createdb kylodb"

    Da biste dozvolili korisniku u bazi podataka, povežite se s ljuskom PostgreSQL:

    sudo -u postgres psql

    Pokrenite sljedeći upit:

    grant all privileges on database kylodb to kylo;

Omogućite udaljeni pristup PostgreSQL poslužitelju

Poslužitelj PostgreSQL po zadanom sluša samo na lokalnom sučelju 127.0.0.1 .

Otvorite konfiguracijsku datoteku postgresql.conf i dodajte listen_addresses = '*' u odjeljak listen_addresses = '*' CONNECTIONS AND AUTHENTICATION . Ovo upućuje poslužitelja da sluša na svim mrežnim sučeljima.

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;

Spremite datoteku i ponovno pokrenite PostgreSQL uslugu da bi promjene stupile na snagu:

sudo service postgresql restart

Provjerite promjene uslužnim programom ss :

ss -nlt | grep 5432

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

Izlaz bi trebao pokazati da PostgreSQL poslužitelj sluša na svim sučeljima (0.0.0.0).

Posljednji korak je konfiguriranje poslužitelja za prihvaćanje udaljenih prijava uređivanjem datoteke pg_hba.conf .

Ispod je nekoliko primjera koji prikazuju različite slučajeve uporabe:

/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

Zaključak

Pokazali smo vam kako instalirati i konfigurirati PostgreSQL na Debianu 10. Više informacija o ovoj temi potražite u PostgreSQL dokumentaciji.

debian postgresql baza podataka