CentOS 8 Server - #8 Install PostgreSQL
Innehållsförteckning:
- förutsättningar
- Installera PostgreSQL på CentOS 8
- PostgreSQL-roller och autentiseringsmetoder
- Skapa PostgreSQL-roll och databas
- Aktivera fjärråtkomst till PostgreSQL-servern
- Slutsats
PostgreSQL eller Postgres är ett öppet källkodsobjektrelativt databashanteringssystem med många avancerade funktioner som låter dig bygga feltoleranta miljöer eller komplexa applikationer.
I den här guiden kommer vi att diskutera hur du installerar PostgreSQL databaseserver på CentOS 8. Innan du väljer vilken version du vill installera, se till att dina applikationer stöder den.
Vi kommer också att utforska grunderna i PostgreSQL-databasadministration.
förutsättningar
För att kunna installera paket måste du vara inloggad som root eller användare med sudo-privilegier.
Installera PostgreSQL på CentOS 8
Vid skrivandet av denna artikel finns det två versioner av PostgreSQL-servern tillgängliga för installation från de vanliga CentOS-lagren: version 9.6 och 10.0.
Skriv en lista för tillgängliga PostgreSQL-modulströmmar:
dnf module list postgresql
Utgången visar att postgresql-modulen är tillgänglig med två strömmar. Varje ström har två profiler: server och klient. Stream 10 med profilservern är standard:
CentOS-8 - AppStream Name Stream Profiles Summary postgresql 10 client, server PostgreSQL server and client module postgresql 9.6 client, server PostgreSQL server and client module
-
För att installera standardströmmen, typ PostgreSQL-server version 10.0:
sudo dnf install @postgresql:10Så här installerar du PostgreSQL-servern version 9.6:
sudo dnf install @postgresql:9.6
Du kanske också vill installera contrib-paketet som innehåller flera ytterligare funktioner för PostgreSQL-databasen:
sudo dnf install postgresql-contrib
När installationen är klar initialiserar du PostgreSQL-databasen med följande kommando:
sudo postgresql-setup initdb
Initializing database… OK
Starta PostgreSQL-tjänsten och aktivera den att starta vid start:
sudo systemctl enable --now postgresql
Använd
psql
verktyget för att verifiera installationen genom att ansluta till PostgreSQL-databasservern och skriva ut dess version:
sudo -u postgres psql -c "SELECT version();"
PostgreSQL 10.6 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 8.2.1 20180905 (Red Hat 8.2.1-3), 64-bit
PostgreSQL-roller och autentiseringsmetoder
PostgreSQL hanterar behörigheterna för databasåtkomst med hjälp av begreppet roller. En roll kan representera en databasanvändare eller en grupp databasanvändare.
PostgreSQL stöder flera autentiseringsmetoder. De vanligaste metoderna är:
- Förtroende - En roll kan ansluta utan lösenord, så länge villkoren som definieras i
pg_hba.confär uppfyllda. Passord - En roll kan anslutas genom att tillhandahålla ett lösenord. Lösenorden kan lagras somscram-sha-256,md5ochpassword(klartext).Ident - Stöds endast på TCP / IP-anslutningar. Det fungerar genom att skaffa klientens användarnamn för operativsystem, med en valfri mappning för användarnamn. Peer - Samma som Ident, men det stöds endast på lokala anslutningar.
PostgreSQL-klientautentisering definieras i konfigurationsfilen med namnet
pg_hba.conf
. Som standard, för lokala anslutningar, är PostgreSQL inställd på att använda peer-autentiseringsmetoden.
postgres
användaren skapas automatiskt när du installerar PostgreSQL-servern. Den här användaren är superanvändaren för PostgreSQL-instansen. Det motsvarar MySQL-rootanvändaren.
För att logga in på PostgreSQL-servern som
postgres
användare, byt först till användaren och sedan åtkomst till PostgreSQL-prompten med
psql
verktyget:
sudo su - postgres
psql
Härifrån kan du interagera med PostgreSQL-instansen. Om du vill lämna PostgreSQL-skalet skriver du:
\q
Du kan också komma åt PostgreSQL-prompten utan att byta användare med kommandot
sudo
:
sudo -u postgres psql
Vanligtvis används
postgres
användaren endast från localhost.
Skapa PostgreSQL-roll och databas
Endast superanvändare och roller med
CREATEROLE
privilegium kan skapa nya roller.
I följande exempel skapar vi en ny roll som heter
john
, en databas med namnet
johndb
och ger behörigheter i databasen.
-
Anslut först till PostgreSQL-skalet:
sudo -u postgres psqlSkapa en ny PostgreSQL-roll med hjälp av följande kommando:
create role john;Skapa en ny databas:
create database johndb;Ge användarna behörigheter i databasen genom att köra följande fråga:
grant all privileges on database johndb to john;
Aktivera fjärråtkomst till PostgreSQL-servern
Som standard lyssnar PostgreSQL-servern endast på det lokala gränssnittet
127.0.0.1
.
För att aktivera fjärråtkomst till din PostgreSQL-server öppnar du konfigurationsfilen:
sudo nano /var/lib/pgsql/data/postgresql.conf
Rulla ner till avsnittet
CONNECTIONS AND AUTHENTICATION
och lägg till / redigera följande rad:
#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;
Spara filen och starta om PostgreSQL-tjänsten med:
sudo systemctl restart postgresql
Verifiera ändringarna med
ss
verktyget:
ss -nlt | grep 5432
LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*
Utsignalen ovan visar att PostgreSQL-servern lyssnar på standardporten på alla gränssnitt (0.0.0.0).
Det sista steget är att konfigurera servern för att acceptera fjärranslutningar genom att redigera filen
pg_hba.conf
.
Nedan följer några exempel som visar olika användningsfall:
/var/lib/pgsql/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD # The user jane can access all databases from all locations using an md5 password host all jane 0.0.0.0/0 md5 # The user jane can access only the janedb database from all locations using an md5 password host janedb jane 0.0.0.0/0 md5 # The user jane can access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust
Slutsats
CentOS 8 tillhandahåller två PostgreSQL-versioner: 9.6 och 10.0.
För mer information om detta ämne besök PostgreSQL-dokumentationen
centos postgresql-databasLedamöter av Europaparlamentet kommer att avgöra om en rad frågor, bland annat hur man reglerar telekomföretag i EU, hur man straffar företag som snedvrider konkurrensen, hur man delar radiofrekvenser som släpps av TV: s migrering till digital sändning och hur man skyddar medborgarnas data i den digitala tiden.
Men de är delade om huruvida IP-adresser ska ses som personuppgifter. "Vi kommer att be kommissionen att formellt lägga fram en rapport om detta", säger Malcolm Harbour, en brittisk konservativ parlamentsledamot som spelar en central roll för att hylla den så kallade telekomrevisionen genom parlamentet.
Hur man installerar postgresql på centos 7
PostgreSQL eller Postgres är ett öppet källkodsobjektrelativt databashanteringssystem. I den här tutorialen visar vi dig två olika metoder för hur du installerar PostgreSQL på din CentOS 7-maskin.
Hur man installerar postgresql på debian 10
Denna handledning leder dig genom stegen för att installera PostgreSQL-databasservern på Debian 10. PostgreSQL, ofta känd helt enkelt som Postgres, är ett öppen källkod för objektrelationellt databashanteringssystem.







