Установка Postgresql в Debian 9 (Stretch)
Innholdsfortegnelse:
- Forutsetninger
- Installerer PostgreSQL
- PostgreSQL-roller og autentiseringsmetoder
- Opprette PostgreSQL rolle og database
- Aktiver ekstern tilgang til PostgreSQL-serveren
- Konklusjon
PostgreSQL, ofte kjent ganske enkelt som Postgres, er et åpen kildekode-relasjonsdatabaseadministrasjonssystem med generelle formål. PostgreSQL har mange avanserte funksjoner som online sikkerhetskopiering, punktgjenoppretting, nestede transaksjoner, SQL- og JSON-spørring, MVCC-kontroll av flere versjoner, asynkron replikering og mer.
I denne opplæringen vil vi vise deg hvordan du installerer PostgreSQL på Debian 9 og utforske grunnleggende grunnleggende databaseadministrasjon.
Forutsetninger
Før du fortsetter med denne opplæringen, må du forsikre deg om at brukeren du er logget inn som har sudo-rettigheter.
Installerer PostgreSQL
Når jeg skriver denne artikkelen, er den siste versjonen av PostgreSQL tilgjengelig fra Debian-depotene PostgreSQL versjon 9.6.
Følg trinnene nedenfor for å installere PostgreSQL på Debian-serveren:
-
Begynn med å oppdatere den lokale pakkeindeksen:
sudo apt update
Installer PostgreSQL-serveren og PostgreSQL contrib-pakken som inneholder tilleggsfunksjoner for PostgreSQL-databasen:
sudo apt install postgresql postgresql-contrib
Når installasjonen er fullført, starter PostgreSQL-tjenesten automatisk. For å bekrefte installasjonen kobler vi til PostgreSQL-databaseserveren ved hjelp av
psql
verktøyet og skriver ut serverversjonen:sudo -u postgres psql -c "SELECT version();"
Utgangen vil se slik ut:
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)
PostgreSQL-roller og autentiseringsmetoder
PostgreSQL håndterer tilgangsrettigheter for databaser ved å bruke begrepet roller. En rolle kan representere en databasebruker eller en gruppe databasebrukere.
PostgreSQL støtter en rekke autentiseringsmetoder. De mest brukte metodene 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 somscram-sha-256
md5
ogpassword
(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 bruke
sudo
kommandoen for å få tilgang til PostgreSQL-ledeteksten uten å bytte brukere:
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.
-
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 PostgreSQL lytter server bare på 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/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;
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/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
Konklusjon
Du har lært hvordan du installerer og konfigurerer PostgreSQL på Debian 9-serveren. For mer informasjon om dette emnet, se PostgreSQL-dokumentasjonen.
debian postgresql-databaseHvordan installere postgresql på centos 7

PostgreSQL eller Postgres er et open source generell objekt-relasjonell databasesystem. I denne opplæringen vil vi vise deg to forskjellige metoder for hvordan du installerer PostgreSQL på CentOS 7-maskinen din.
Hvordan installere postgresql på centos 8

I denne guiden vil vi diskutere hvordan du installerer PostgreSQL databaseserver på CentOS 8. Vi vil også utforske det grunnleggende om PostgreSQL databaseadministrasjon.
Hvordan installere postgresql på debian 10

Denne veiledningen fører deg gjennom trinnene for å installere PostgreSQL-databaseserveren på Debian 10. PostgreSQL, ofte kjent ganske enkelt som Postgres, er et åpen kildekode-objekt-relasjonsdatabaseadministrasjonssystem for generelle formål.