Android

Kako instalirati postgresql na debian 9

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. PostgreSQL ima mnogo naprednih značajki kao što su mrežne sigurnosne kopije, oporavak u vremenu, ugniježđene transakcije, SQL i JSON upit, kontrola istodobnosti u više verzija (MVCC), asinhrono kopiranje i još mnogo toga.

U ovom ćemo vam vodiču pokazati kako instalirati PostgreSQL na Debian 9 i istražiti osnove osnovne administracije baza podataka.

Preduvjeti

Prije nego što nastavite s ovim vodičem, provjerite ima li korisnik na koji ste prijavljeni kao i sudo privilegije.

Instaliranje PostgreSQL-a

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

Da biste instalirali PostgreSQL na svoj Debian poslužitelj, izvršite sljedeće korake:

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

    sudo apt update

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

    sudo apt install postgresql postgresql-contrib

    Kada se instalacija završi, PostgreSQL usluga pokrenut će se automatski. Da bismo potvrdili instalaciju, spojit ćemo se na PostgreSQL poslužitelj baze podataka pomoću psql programa psql i ispisati verziju poslužitelja:

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

    Izlaz će izgledati ovako:

    version ----------------------------------------------------------------------------------------------------------- PostgreSQL 9.6.10 on x86_64-pc-linux-gnu, compiled by gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516, 64-bit (1 row)

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. Uloga može predstavljati korisnika baze podataka ili grupu korisnika baza podataka.

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

  • Povjerenje - Pomoću ove metode 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) Identitet - Ova metoda je podržana samo na TCP / IP vezama. Radi tako što dobiva korisničko ime klijentovog operativnog sustava, s opcijskim preslikavanjem korisničkog imena.Peer - Isto kao Ident, ali podržano je samo na lokalnim vezama.

PostgreSQL provjera klijenta definirana je u konfiguracijskoj datoteci pod nazivom pg_hba.conf . Prema lokalnim vezama PostgreSQL je postavljen za upotrebu metode peer identiteta.

Korisnik postgres kreira se automatski kada instalirate PostgreSQL. Ovaj je korisnik superuzer za PostgreSQL instancu i ekvivalentan je korijenskom korisniku MySQL.

Da biste se prijavili na PostgreSQL poslužitelj kao postgres korisnik, prvo se trebate prebaciti na korisničke postgrese, a zatim možete pristupiti PostgreSQL upita pomoću psql programa psql :

sudo su - postgres psql

Odavde možete komunicirati sa instancom 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 od lokalnog domaćina i preporučuje se ne postavljati lozinku za ovog korisnika.

Stvaranje uloga i baze podataka PostgreSQL

Možete stvoriti nove uloge iz naredbenog retka pomoću naredbe createuser . Samo CREATEROLE i uloge s CREATEROLE privilegijom mogu stvoriti nove uloge.

U sljedećem ćemo primjeru stvoriti novu ulogu zvanu john baza podataka koja se zove johndb i dodijeliti povlastice bazi podataka.

  1. Izradite novu PostgreSQL ulogu

    Sljedeća naredba stvorit će novu ulogu zvanu john:

    sudo su - postgres -c "createuser john"

    Napravite novu PostgreSQL bazu podataka

    Stvorite novu bazu podataka pod nazivom johndb pomoću naredbe createdb :

    sudo su - postgres -c "createdb johndb"

    Dodijelite povlastice

    Da biste dodijelili dopuštenja korisniku john na bazi podataka koju smo stvorili u prethodnom koraku, povežite se s ljuskom PostgreSQL:

    sudo -u postgres psql

    i pokrenite sljedeći upit:

    grant all privileges on database johndb to john;

Omogućite udaljeni pristup PostgreSQL poslužitelju

Poslužitelj PostgreSQL prema zadanom sluša samo na lokalnom sučelju 127.0.0.1 . Da biste omogućili udaljeni pristup vašem PostgreSQL poslužitelju, otvorite konfiguracijsku datoteku postgresql.conf i dodajte listen_addresses = '*' u odjeljak listen_addresses = '*' CONNECTIONS AND AUTHENTICATION .

sudo vim /etc/postgresql/9.6/main/postgresql.conf /etc/postgresql/9.6/main/postgresql.conf

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

spremite datoteku i ponovno pokrenite PostgreSQL uslugu sa:

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:*

Kao što se vidi iz izlaza iznad PostgreSQL poslužitelja se preslušava na svim sučeljima (0.0.0.0).

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

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

/etc/postgresql/9.6/main/pg_hba.conf

# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using a 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 a 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

Naučili ste kako instalirati i konfigurirati PostgreSQL na vašem Debian 9 poslužitelju. Dodatne informacije o ovoj temi potražite u PostgreSQL dokumentaciji.

debian postgresql baza podataka