How to Install PostgreSQL 12 on CentOS 8 RHEL 8
Inhoudsopgave:
- voorwaarden
- PostgreSQL installeren op CentOS 8
- PostgreSQL-rollen en verificatiemethoden
- PostgreSQL-rol en database maken
- Schakel externe toegang tot de PostgreSQL-server in
- Conclusie
PostgreSQL of Postgres is een open-source object-relationeel databasebeheersysteem voor algemene doeleinden met veel geavanceerde functies waarmee u fouttolerante omgevingen of complexe applicaties kunt bouwen.
In deze handleiding bespreken we hoe u de PostgreSQL-databaseserver op CentOS 8 installeert. Controleer voordat u kiest welke versie u wilt installeren of uw toepassingen deze ondersteunen.
We zullen ook de basis van PostgreSQL databasebeheer verkennen.
voorwaarden
Om pakketten te kunnen installeren, moet je ingelogd zijn als root of gebruiker met sudo-rechten.
PostgreSQL installeren op CentOS 8
Op het moment dat dit artikel werd geschreven, zijn er twee versies van PostgreSQL-server beschikbaar voor installatie vanuit de standaard CentOS-opslagplaatsen: versie 9.6 en 10.0.
Typ het volgende om de beschikbare streams van de PostgreSQL-module weer te geven:
dnf module list postgresql
De output laat zien dat de postgresql-module beschikbaar is met twee streams. Elke stream heeft twee profielen: server en client. Stream 10 met de profielserver is de standaardinstelling:
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
-
Om de standaard stream te installeren, type PostgreSQL-server versie 10.0:
sudo dnf install @postgresql:10Om de PostgreSQL-server versie 9.6 te installeren:
sudo dnf install @postgresql:9.6
Misschien wilt u ook het contrib-pakket installeren dat verschillende extra functies voor de PostgreSQL-database biedt:
sudo dnf install postgresql-contrib
Nadat de installatie is voltooid, initialiseert u de PostgreSQL-database met de volgende opdracht:
sudo postgresql-setup initdb
Initializing database… OK
Start de PostgreSQL-service en schakel deze in om op te starten:
sudo systemctl enable --now postgresql
Gebruik de
psql
tool om de installatie te verifiëren door verbinding te maken met de PostgreSQL-databaseserver en de versie af te drukken:
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-rollen en verificatiemethoden
PostgreSQL behandelt de toegangsrechten van de database met behulp van het concept van rollen. Een rol kan een database-gebruiker of een groep database-gebruikers vertegenwoordigen.
PostgreSQL ondersteunt meerdere authenticatiemethoden. De meest gebruikte methoden zijn:
- Vertrouwen - Een rol kan verbinding maken zonder wachtwoord, zolang aan de voorwaarden is voldaan die zijn gedefinieerd in
pg_hba.confWachtwoord - Een rol kan verbinding maken door een wachtwoord op te geven. De wachtwoorden kunnen worden opgeslagen alsscram-sha-256,md5enpassword(clear-text). Identiek - Alleen ondersteund op TCP / IP-verbindingen. Het werkt door de gebruikersnaam van het besturingssysteem van de client te verkrijgen, met een optionele toewijzing van een gebruikersnaam. Peer - Idem als Ident, maar het wordt alleen ondersteund op lokale verbindingen.
PostgreSQL-clientverificatie wordt gedefinieerd in het configuratiebestand met de naam
pg_hba.conf
. Voor lokale verbindingen is PostgreSQL standaard ingesteld om de peer-authenticatiemethode te gebruiken.
De
postgres
gebruiker wordt automatisch gemaakt wanneer u de PostgreSQL-server installeert. Deze gebruiker is de superuser voor de PostgreSQL-instantie. Het is gelijk aan de MySQL-rootgebruiker.
Om in te loggen op de PostgreSQL-server als de
postgres
gebruiker, schakelt u eerst over naar de gebruiker en
psql
vervolgens de PostgreSQL-prompt met behulp van het hulpprogramma
psql
:
sudo su - postgres
psql
Vanaf hier kunt u communiceren met de PostgreSQL-instantie. Typ het volgende om de PostgreSQL-shell te verlaten:
\q
U kunt ook toegang krijgen tot de PostgreSQL-prompt zonder van gebruiker te wisselen met de opdracht
sudo
:
sudo -u postgres psql
Doorgaans wordt de
postgres
gebruiker alleen van de localhost gebruikt.
PostgreSQL-rol en database maken
Alleen superusers en rollen met
CREATEROLE
rechten kunnen nieuwe rollen maken.
In het volgende voorbeeld maken we een nieuwe rol met de naam
john
, een database met de naam
johndb
en verlenen we privileges voor de database.
-
Maak eerst verbinding met de PostgreSQL-shell:
sudo -u postgres psqlMaak een nieuwe PostgreSQL-rol met behulp van de volgende opdracht:
create role john;Maak een nieuwe database:
create database johndb;Verleen rechten aan de gebruiker in de database door de volgende query uit te voeren:
grant all privileges on database johndb to john;
Schakel externe toegang tot de PostgreSQL-server in
Standaard luistert de PostgreSQL-server alleen op de lokale interface
127.0.0.1
.
Om externe toegang tot uw PostgreSQL-server in te schakelen, opent u het configuratiebestand:
sudo nano /var/lib/pgsql/data/postgresql.conf
Blader naar beneden naar het gedeelte
CONNECTIONS AND AUTHENTICATION
en voeg de volgende regel toe / bewerk deze:
#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;
Sla het bestand op en start de PostgreSQL-service opnieuw met:
sudo systemctl restart postgresql
Controleer de wijzigingen met het hulpprogramma
ss
:
ss -nlt | grep 5432
LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*
Bovenstaande uitvoer laat zien dat de PostgreSQL-server luistert naar de standaardpoort op alle interfaces (0.0.0.0).
De laatste stap is het configureren van de server om externe verbindingen te accepteren door het bestand
pg_hba.conf
bewerken.
Hieronder volgen enkele voorbeelden van verschillende gebruiksscenario's:
/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
Conclusie
CentOS 8 biedt twee PostgreSQL-versies: 9.6 en 10.0.
Bezoek de PostgreSQL-documentatie voor meer informatie over dit onderwerp
centos postgresql-databasePostgresql installeren op Centos 7
PostgreSQL of Postgres is een open source algemeen object-relationeel databasebeheersysteem. In deze zelfstudie laten we u twee verschillende methoden zien voor het installeren van PostgreSQL op uw CentOS 7-machine.
Hoe postgresql op debian 10 te installeren
Deze zelfstudie leidt u door de stappen van het installeren van de PostgreSQL-databaseserver op Debian 10. PostgreSQL, vaak eenvoudigweg bekend als Postgres, is een open-source, algemeen object-relationeel databasebeheersysteem.
Postgresql installeren op debian 9
PostgreSQL, vaak simpelweg bekend als Postgres, is een open source algemeen object-relationeel databasebeheersysteem. In deze tutorial laten we u zien hoe u PostgreSQL op Debian 9 installeert en de grondbeginselen van basisdatabasebeheer verkennen.







