Android

Sådan installeres postgresql på centos 7

How to install E107 CMS 2.1.7 on CentOS 7

How to install E107 CMS 2.1.7 on CentOS 7

Indholdsfortegnelse:

Anonim

PostgreSQL eller Postgres er et open source generel objekt-relationel databasestyringssystem med mange avancerede funktioner, som giver dig mulighed for at oprette komplekse webapplikationer.

I denne tutorial vil vi vise dig to forskellige metoder til, hvordan du installerer PostgreSQL på din CentOS 7-maskine. Den første metode fører dig gennem de trin, der er nødvendige for at installere PostgreSQL v9.2.23 fra CentOS-oplagrene, mens den anden viser dig, hvordan du installerer den nyeste version af PostgreSQL fra de officielle PostgreSQL-oplagringssteder.

Hvis din applikation ikke kræver den nyeste version, anbefaler vi at bruge den første metode og installere PostgreSQL fra CentOS-oplagrene.

Vi vil også udforske de grundlæggende elementer i PostgreSQL-databaseadministration.

Forudsætninger

Før du fortsætter med denne tutorial, skal du sørge for, at du er logget ind som bruger med sudo-privilegier.

Installer PostgreSQL fra CentOS-oplagrene

På dette tidspunkt, hvor denne artikel skrives, er den nyeste version af PostgreSQL, der er tilgængelig fra CentOS-oplagrene, PostgreSQL version 9.2.23.

Følg nedenstående trin for at installere PostgreSQL på din CentOS-server:

  1. Installation af PostgreSQL

    For at installere PostgreSQL-serveren sammen med PostgreSQL-bidragspakken, der indeholder flere ekstra funktioner til PostgreSQL-databasen, skal du blot indtaste:

    sudo yum install postgresql-server postgresql-contrib

    Initialisering af databasen

    Initialiser PostgreSQL-databasen med følgende kommando:

    sudo postgresql-setup initdb

    Initializing database… OK

    Starter PostgreSQL

    For at starte PostgreSQL-tjenesten og aktivere den til at starte med boot, skal du blot indtaste:

    sudo systemctl start postgresql sudo systemctl enable postgresql

    Verificering af PostgreSQL-installation

    For at verificere installationen vil vi forsøge at oprette forbindelse til PostgreSQL databaseserver ved hjælp af psql værktøjet og udskrive serverversionen:

    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)

Psql er et interaktivt kommandolinjeværktøj, der giver os mulighed for at interagere med PostgreSQL-serveren.

Installer PostgreSQL fra PostgreSQL-oplagrene

På dette tidspunkt, hvor denne artikel skrives, er den nyeste version af PostgreSQL, der er tilgængelig fra de officielle PostgreSQL-oplagringssteder, PostgreSQL version 10.4. Inden du fortsætter med det næste trin, skal du besøge PostgreSQL Yum Repository-siden og kontrollere, om der er en ny version tilgængelig.

Følg nedenstående trin for at installere den nyeste PostgreSQL-version på din CentOS-server:

  1. Aktivering af PostgreSQL-lager

    For at aktivere PostgreSQL-arkivet skal du blot installere rpm filens arkiv:

    sudo yum install

    Installation af PostgreSQL

    Når depotet er aktiveret, skal du installere PostgreSQL-serveren og PostgreSQL-bidragspakkerne med:

    sudo yum install postgresql10-server postgresql10-contrib

    Initialisering af databasen

    Sådan initialiseres PostgreSQL-databasetypen:

    sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

    Initializing database… OK

    Starter PostgreSQL

    Sådan starter du PostgreSQL-tjenesten og aktiverer den at starte på starttype:

    sudo systemctl start postgresql-10 sudo systemctl enable postgresql-10

    Verificering af PostgreSQL-installation

    For at verificere installationen vil vi forsøge at oprette forbindelse til PostgreSQL databaseserver ved hjælp af psql værktøjet og udskrive serverversionen:

    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 godkendelsesmetoder

Adgangstilladelser til databaser inden for PostgreSQL håndteres med begrebet roller. En rolle kan repræsentere en databasebruger eller en gruppe databasebrugere.

PostgreSQL understøtter flere godkendelsesmetoder. De mest almindeligt anvendte metoder er:

  • Tillid - Med denne metode kan rollen oprette forbindelse uden en adgangskode, så længe kriterierne, der er defineret i pg_hba.conf er opfyldt. Passord - En rolle kan oprette forbindelse ved at angive en adgangskode. Adgangskoderne kan gemmes som scram-sha-256 md5 og password (klartekst).Ident - Denne metode understøttes kun på TCP / IP-forbindelser. Det fungerer ved at hente klientens brugernavn til operativsystemet med en valgfri brugernavnskortlægning. Peer - Samme som Ident, men det understøttes kun på lokale forbindelser.

PostgreSQL-klientgodkendelse defineres i konfigurationsfilen med navnet pg_hba.conf . For lokale forbindelser er PostgreSQL som standard indstillet til at bruge peer-godkendelsesmetoden.

postgres brugeren oprettes automatisk, når du installerer PostgreSQL. Denne bruger er superbrugeren til PostgreSQL-forekomsten, og den svarer til MySQL-rodbrugeren.

For at logge ind på PostgreSQL-serveren som postgres-bruger skal du først skifte til brugerens postgres og derefter få adgang til PostgreSQL-prompten vha. psql værktøjet:

sudo su - postgres psql

Herfra kan du interagere med din PostgreSQL-forekomst. For at afslutte PostgreSQL-skalet, skal du skrive:

\q

Du kan også få adgang til PostgreSQL-prompten uden at skifte brugere ved hjælp af kommandoen sudo :

sudo -u postgres psql

postgres brugeren bruges typisk kun fra den lokale vært, og det anbefales ikke at indstille adgangskoden til denne bruger.

Hvis du installerede PostgreSQL version 10 fra de officielle PostgreSQL-lagre, skal du bruge den fulde sti til psql som er /usr/pgsql-10/bin/psql .

Oprettelse af PostgreSQL rolle og database

Kun superbrugere og roller med CREATEROLE privilegium kan oprette nye roller.

I det følgende eksempel vil vi oprette en ny rolle, der hedder john en database med navnet johndb og give privilegier på databasen.

  1. Opret forbindelse til PostgreSQL Shell

    sudo -u postgres psql

    Opret en ny PostgreSQL-rolle

    Følgende kommando opretter en ny rolle, der hedder john:

    create role john;

    Opret en ny PostgreSQL-database

    Opret en ny database ved navn johndb ved hjælp af kommandoen createb:

    create database johndb;

    Giv privilegier

    For at give tilladelser til john brugeren i den database, vi oprettede i det forrige trin, skal du køre følgende forespørgsel:

    grant all privileges on database johndb to john;

Aktivér fjernadgang til PostgreSQL-server

Som standard lytter PostgreSQL-serveren kun til den lokale grænseflade 127.0.0.1 . For at aktivere fjernadgang til din PostgreSQL-server skal du åbne konfigurationsfilen postgresql.conf og tilføje listen_addresses = '*' i afsnittet CONNECTIONS AND AUTHENTICATION listen_addresses = '*' .

sudo vim /var/lib/pgsql/data/postgresql.conf Hvis du kører PostgreSQL version 10, er stien 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;

gem filen og genstart PostgreSQL-tjenesten med:

sudo systemctl restart postgresql Hvis du kører PostgreSQL version 10, skal du genstarte PostgreSQL-tjenesten med systemctl restart postgresql-10 .

Bekræft ændringerne med ss værktøjet:

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 outputtet over lytter PostgreSQL-serveren på alle grænseflader (0.0.0.0).

Det sidste trin er at konfigurere serveren til at acceptere fjernforbindelser ved at redigere filen pg_hba.conf .

Nedenfor er nogle eksempler, der viser forskellige anvendelsessager:

/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 kører PostgreSQL version 10, er den fulde sti til filen /var/lib/pgsql/10/data/pg_hba.conf .

Konklusion

Du har lært, hvordan du installerer og konfigurerer PostgreSQL på din CentOS 7-server.

Du kan konsultere PostgreSQL-dokumentationen for at få flere oplysninger om dette emne.

centos postgresql-database