Android

Hvordan installere postgresql på ubuntu 18.04

How to Install and configuration PostgreSQL on Ubuntu Linux

How to Install and configuration PostgreSQL on Ubuntu Linux

Innholdsfortegnelse:

Anonim

PostgreSQL eller Postgres er et open source generell objekt-relasjonell databasesystem. PostgreSQL har mange avanserte funksjoner som lar deg lage komplekse webapplikasjoner.

I denne opplæringen vil vi vise deg hvordan du installerer PostgreSQL på Ubuntu 18.04 og utforske grunnleggende grunnleggende databaseadministrasjon.

Forutsetninger

Før du fortsetter med denne opplæringen, må du sørge for at du er logget inn som en bruker med sudo-rettigheter.

Installer PostgreSQL på Ubuntu

Når jeg skriver denne artikkelen, er den siste versjonen av PostgreSQL tilgjengelig fra de offisielle Ubuntu-depotene PostgreSQL versjon 10.4.

Følg trinnene nedenfor for å installere PostgreSQL på Ubuntu-serveren:

  1. Installerer PostgreSQL

    Oppdater den lokale pakkeindeksen og installer PostgreSQL-serveren sammen med PostgreSQL contrib-pakken som gir flere tilleggsfunksjoner for PostgreSQL-databasen:

    sudo apt update sudo apt install postgresql postgresql-contrib

    Verifiserer PostgreSQL-installasjon

    Når installasjonen er fullført, starter PostgreSQL-tjenesten automatisk.

    For å bekrefte installasjonen vil vi prøve å koble til PostgreSQL-databaseserveren ved hjelp av psql og skrive ut serverversjonen:

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

psql er et interaktivt kommandolinjeverktøy som lar deg samhandle med PostgreSQL-serveren.

PostgreSQL-roller og autentiseringsmetoder

Datatilgangstillatelser i PostgreSQL håndteres med begrepet roller. En rolle kan representere en databasebruker eller en gruppe databasebrukere.

PostgreSQL støtter flere autentiseringsmetoder. De mest brukte er:

  • Tillit - Med denne metoden kan rollen koble seg til uten et passord, så lenge kriteriene som er definert i pg_hba.conf er oppfylt. Passord - En rolle kan koble seg ved å oppgi et passord. Passordene kan lagres som scram-sha-256 md5 og password (klartekst) Ident - Denne metoden støttes bare på TCP / IP-tilkoblinger. Fungerer ved å skaffe klientens brukernavn brukernavn, med en valgfri brukernavnskartlegging. Peer - Samme som Ident, men det støttes bare på lokale tilkoblinger.

PostgreSQL-klientgodkjenning er definert i konfigurasjonsfilen som heter pg_hba.conf . Som standard for lokale tilkoblinger er PostgreSQL satt til å bruke peer-autentiseringsmetoden.

postgres brukeren opprettes automatisk når du installerer PostgreSQL. Denne brukeren er superbrukeren for PostgreSQL-forekomsten, og den tilsvarer MySQL-rotbrukeren.

For å logge på PostgreSQL-serveren som postgres-bruker først må du bytte til brukerpostgres og deretter få tilgang til en PostgreSQL-ledetekst ved hjelp av psql verktøyet:

sudo su - postgres psql

Herfra kan du samhandle med PostgreSQL-forekomsten. Slik går du ut av PostgreSQL-skalltypen:

\q

Du kan også få tilgang til PostgreSQL-ledeteksten uten å bytte brukere ved å bruke sudo kommandoen:

sudo -u postgres psql

postgres brukeren brukes vanligvis bare fra den lokale verten, og det anbefales ikke å angi passord for denne brukeren.

Opprette PostgreSQL rolle og database

Du kan opprette nye roller fra kommandolinjen ved hjelp av createuser kommandoen. Bare superusere og roller med CREATEROLE privilegium kan lage nye roller.

I det følgende eksemplet vil vi opprette en ny rolle som heter john en database som heter johndb og gi rettigheter i databasen.

  1. Lag en ny PostgreSQL-rolle

    Følgende kommando vil opprette en ny rolle som heter john:

    sudo su - postgres -c "createuser john"

    Lag en ny PostgreSQL-database

    Lag en ny database med navnet johndb ved å bruke kommandoen createb:

    sudo su - postgres -c "createdb johndb"

    Gi privilegier

    For å gi tillatelser til john brukeren i databasen vi opprettet i forrige trinn, kobler du til PostgreSQL-skallet:

    sudo -u postgres psql

    og kjør følgende spørsmål:

    grant all privileges on database johndb to john;

Aktiver ekstern tilgang til PostgreSQL-serveren

Som standard lytter PostgreSQL-serveren bare til det lokale grensesnittet 127.0.0.1 . For å aktivere ekstern tilgang til PostgreSQL-serveren, åpner du konfigurasjonsfilen postgresql.conf og legger til listen_addresses = '*' i delen CONNECTIONS AND AUTHENTICATION .

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

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

lagre filen og start PostgreSQL-tjenesten på nytt med:

sudo service postgresql restart

Bekreft endringene med ss verktøyet:

ss -nlt | grep 5432

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

Som du kan se fra utgangen over, hører PostgreSQL-serveren på alle grensesnitt (0.0.0.0).

Det siste trinnet er å konfigurere serveren til å godta fjerntilkoblinger ved å redigere filen pg_hba.conf .

Nedenfor er noen eksempler som viser forskjellige brukssaker:

/etc/postgresql/10/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

Konklusjon

Du har lært hvordan du installerer og konfigurerer PostgreSQL på Ubuntu 18.04-serveren.

Du kan konsultere PostgreSQL 10.4-dokumentasjonen for mer informasjon om dette emnet.

ubuntu postgresql-database