Install Postgres on Centos 7
Innholdsfortegnelse:
- Forutsetninger
- Installer PostgreSQL fra CentOS-depotene
- Installer PostgreSQL fra PostgreSQL-depotene
- PostgreSQL-roller og autentiseringsmetoder
- Opprette PostgreSQL rolle og database
- Aktiver ekstern tilgang til PostgreSQL-serveren
- Konklusjon
PostgreSQL eller Postgres er et open source generell objekt-relasjonell databasesystem med mange avanserte funksjoner som lar deg lage komplekse webapplikasjoner.
I denne opplæringen vil vi vise deg to forskjellige metoder for hvordan du installerer PostgreSQL på CentOS 7-maskinen din. Den første metoden vil lede deg gjennom trinnene som er nødvendige for å installere PostgreSQL v9.2.23 fra CentOS-depotene, mens den andre vil vise deg hvordan du installerer den nyeste versjonen av PostgreSQL fra de offisielle PostgreSQL-depotene.
Hvis applikasjonen din ikke krever den nyeste versjonen, anbefaler vi å bruke den første metoden og installere PostgreSQL fra CentOS-depotene.
Vi vil også utforske grunnleggende elementer i PostgreSQL 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 fra CentOS-depotene
Når jeg skriver denne artikkelen, er den siste versjonen av PostgreSQL tilgjengelig fra CentOS-depotene PostgreSQL versjon 9.2.23.
Følg trinnene nedenfor for å installere PostgreSQL på CentOS-serveren:
-
Installerer PostgreSQL
For å installere PostgreSQL-serveren sammen med PostgreSQL contrib-pakken som gir flere tilleggsfunksjoner for PostgreSQL-databasen, skriver du ganske enkelt:
sudo yum install postgresql-server postgresql-contrib
Initialisering av databasen
Initialiser PostgreSQL-databasen med følgende kommando:
sudo postgresql-setup initdb
Initializing database… OK
Starter PostgreSQL
For å starte PostgreSQL-tjenesten og aktivere den til å starte på oppstart skriver du ganske enkelt:
sudo systemctl start postgresql
sudo systemctl enable postgresql
Verifiserer PostgreSQL-installasjon
For å bekrefte installasjonen vil vi prøve å koble til PostgreSQL-databaseserveren ved hjelp av
psql
verktøyet og skrive ut serverversjonen:sudo -u postgres psql -c "SELECT version();"
PostgreSQL 9.2.23 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16), 64-bit (1 row)
Installer PostgreSQL fra PostgreSQL-depotene
I skrivende stund skriver denne artikkelen, er den siste versjonen av PostgreSQL tilgjengelig fra de offisielle PostgreSQL-depotene PostgreSQL versjon 10.4. Før du fortsetter med neste trinn, bør du gå til PostgreSQL Yum Repository-siden og sjekke om det er en ny versjon tilgjengelig.
Følg trinnene nedenfor for å installere den nyeste PostgreSQL-versjonen på CentOS-serveren:
-
Aktiverer PostgreSQL-depot
For å aktivere PostgreSQL-depotet, installer du bare
rpm
filen for repository:sudo yum install
Installerer PostgreSQL
Når depotet er aktivert, installer PostgreSQL-serveren og PostgreSQL contrib-pakker med:
sudo yum install postgresql10-server postgresql10-contrib
Initialisering av databasen
Slik initialiserer du PostgreSQL-databasetypen:
sudo /usr/pgsql-10/bin/postgresql-10-setup initdb
Initializing database… OK
Starter PostgreSQL
Slik starter du PostgreSQL-tjenesten og aktiverer den til å starte på starttype:
sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10
Verifiserer PostgreSQL-installasjon
For å bekrefte installasjonen vil vi prøve å koble til PostgreSQL-databaseserveren ved hjelp av
psql
verktøyet og skrive ut serverversjonen:sudo -u postgres /usr/pgsql-10/bin/psql -c "SELECT version();"
PostgreSQL 10.4 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28), 64-bit (1 row)
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 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. Det 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
. For lokale tilkoblinger er PostgreSQL som standard 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 PostgreSQL-ledeteksten ved hjelp av
psql
verktøyet:
sudo su - postgres
psql
Herfra kan du samhandle med PostgreSQL-forekomsten. For å gå ut av PostgreSQL-skallet, skriver du:
\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.
psql
som er
/usr/pgsql-10/bin/psql
.
Opprette PostgreSQL rolle og database
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.
-
Koble til PostgreSQL Shell
sudo -u postgres psql
Lag en ny PostgreSQL-rolle
Følgende kommando vil opprette en ny rolle som heter john:
create role john;
Lag en ny PostgreSQL-database
Lag en ny database med navnet johndb ved å bruke kommandoen createb:
create database johndb;
Gi privilegier
For å gi tillatelser til
john
brukeren i databasen vi opprettet i forrige trinn, kjører du følgende spørring: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 /var/lib/pgsql/data/postgresql.conf
Hvis du kjører PostgreSQL versjon 10, er banen til filen
/var/lib/pgsql/10/data/postgresql.conf
./var/lib/pgsql/data/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 systemctl restart postgresql
Hvis du kjører PostgreSQL versjon 10, start PostgreSQL-tjenesten på nytt med
systemctl restart postgresql-10
.
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:
/var/lib/pgsql/data/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
Hvis du kjører PostgreSQL versjon 10, er hele banen til filen
/var/lib/pgsql/10/data/pg_hba.conf
.
Konklusjon
Du har lært hvordan du installerer og konfigurerer PostgreSQL på CentOS 7-serveren.
Du kan konsultere PostgreSQL-dokumentasjonen for mer informasjon om dette emnet.
centos postgresql databaseHvordan 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.
Hvordan installere postgresql på debian 9

PostgreSQL, ofte kjent ganske enkelt som Postgres, er et åpen kildekode-relasjonsdatabaseadministrasjonssystem med generelle formål. I denne opplæringen vil vi vise deg hvordan du installerer PostgreSQL på Debian 9 og utforske grunnleggende grunnleggende databaseadministrasjon.