Come installare il server PostgreSQL su RHEL 8/CentOS 8
PostgreSQL è un sistema di gestione di database relazionali a oggetti opensource gratuito. L'obiettivo di questo tutorial è eseguire un'installazione e una configurazione di base del server PostgreSQL sul server Linux RHEL 8/CentOS 8.
In questo tutorial imparerai:
- Come installare il server di database PostgreSQL su RHEL 8/CentOS 8
- Come avviare e abilitare il server di database PostgreSQL
- Come accedere al database PostgreSQL da localhost e da una posizione remota
- Come impostare la password per l'utente
postgres
predefinito - Come abilitare PostgreSQL per l'ascolto su tutte le reti
- Come proteggere la connessione remota PostgreSQL con l'autenticazione con password MD5
- Come aprire la porta del firewall PostgreSQL
- Come stabilire una connessione remota al server PostgreSQL utilizzando il client
psql
Inizializzazione e accesso al database PostgreSQL su Red Hat Enterprise Linux 8
Requisiti software e convenzioni utilizzate
Istruzioni dettagliate per l'installazione di PostgreSQL locale e l'accesso al database
Installa il server PostreSQL. Eseguire il comando
dnf
seguente per eseguire l'installazione di un pacchetto server PostreSQL:dnf install postgresql-server
-
Inizializza il database PostgreSQL:
postgresql-setup --initdb --unit postgresql * Initializing database in '/var/lib/pgsql/data' * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
Avvia PostgreSQL e, facoltativamente, abilitalo per avviarlo dopo il riavvio.
systemctl start postgresql systemctl enable postgresql
A questo punto il server PostreSQL dovrebbe essere attivo e funzionante e in ascolto sulla porta
localhost 5432
. Utilizzareil comando ss
per verificare che questo sia il caso:ss -nlt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:111 0.0.0.0:* LISTEN 0 32 192.168.122.1:53 0.0.0.0:* LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 128 127.0.0.1:5432 0.0.0.0:* LISTEN 0 128 [::]:111 [::]:* LISTEN 0 128 [::]:22 [::]:* LISTEN 0 128 [::1]:5432 [::]:*
Accedi al database PostreSQL. Quando installi il database PostgreSQL sul tuo sistema RHEL 8/CentOS 8, il programma di installazione creerà automaticamente anche un nuovo
postgres
utente predefinito.La password predefinita per l'utente
postgres
non è impostata, quindi è vuota. Per accedere al database PostgreSQL, eseguire prima il comandosu
come utente root per passare all'utente postres. Quindi, digitapsql
per accedere al database.su - postgres psql psql (10.5) Type "help" for help. postgres=#
notaNOTA
Per uscire dalla shell del database PostreSQL, digitare \q
o premere la combinazione di tasti CTRL+d
.
Accesso remoto al database PostgreSQL e connessione sicura
Impostare la password per l'utente
postgres
. Per accedere al server PostreSQL da remoto imposteremo prima la password per l'utentepostres
:su - postgres psql psql (10.5) Type "help" for help. postgres=# \password postgres Enter new password: Enter it again: postgres=# exit postgres-# \q
Abilita il server PostgreSQL per l'ascolto su tutte le reti disponibili. Modificare il file di configurazione principale
/var/lib/pgsql/data/postgresql.conf
:nano /var/lib/pgsql/data/postgresql.conf
Una volta pronto, aggiungi la seguente riga da qualche parte nella sezione CONNESSIONI E AUTENTICAZIONE:
listen_addresses = '*'
ss -nlt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 0.0.0.0:111 0.0.0.0:* LISTEN 0 32 192.168.122.1:53 0.0.0.0:* LISTEN 0 128 0.0.0.0:22 0.0.0.0:* LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128 [::]:111 [::]:* LISTEN 0 128 [::]:22 [::]:* LISTEN 0 128 [::]:5432 [::]:*
-
Abilita l'autenticazione con password crittografata MD5:
echo "host all all 0.0.0.0/0 md5" >> /var/lib/pgsql/data/pg_hba.conf
Applicare le modifiche alla configurazione di PostgreSQL:
systemctl restart postgresql
Aprire la porta
5432
del firewall per un traffico in entrata PostgreSQL remoto:firewall-cmd --zone=public --permanent --add-service=postgresql firewall-cmd --reload
Connettiti al server di database PostgreSQL da una postazione remota. Per prima cosa installa lo strumento client
psql
PostgreSQL sul tuo host remoto:RHEL/CENTOS dnf install postgresql UBUNTU/DEBIAN apt install postgresql-client
Creare una connessione remota per ospitare ad es.
192.168.1.151
come utentepostgres
e password utente come definito nelpassaggio 1 precedente:psql -h 192.168.1.151 -U postgres Password for user postgres: psql (10.6 (Ubuntu 10.6-0ubuntu0.18.04.1), server 10.5) Type "help" for help. postgres=#
avvertimento