Installare PostgreSQL 18 su Linux è un’ottima scelta per chi necessita di una piattaforma database moderna, sicura e adatta a carichi di lavoro mission-critical. In questa guida vedremo come installarlo sulle distribuzione Linux derivate RHEL (Red Hat Enterprise Linux, AlmaLinux, Rocky Linux, Oracle Linux).
I vantaggi dell’utilizzo di PostgreSQL sono molteplici
- affidabilità e integrità dei dati
- conformità agli standard SQL
- funzionalità avanzate di sicurezza
- scalabilità per ambienti enterprise
Utilizzo del repository ufficiale PostgreSQL
Le distribuzioni derivate RHEL includono PostgreSQL nei loro repository ufficiali. Tuttavia, queste versioni possono non essere aggiornate all’ultima release e variare a seconda della distribuzione utilizzata. La scelta migliore è quindi quella di utilizzare il repository ufficiale di PostgreSQL che garantisce
- la possibilità di utilizzare l’ultima versione stabile disponibile
- aggiornamenti di sicurezza tempestivi
- possibilità di installazione di versioni diverse
- maggiore controllo sugli update
Installare PostgreSQL 18 su sistemi RHEL, AlmaLinux, Rocky Linux
Iniziamo a vedere la procedura di installazione. Per prima cosa dobbiamo disabilitare il modulo PostgreSQL di sistema al fine di evitare conflitti con i pacchetti
sudo dnf -qy module disable postgresqlInstalliamo il repository ufficiale di PostgreSQL in base alla distribuzione che stiamo utilizzando
# Repository per RHEL, AlmaLinux, Rocky Linux versione 8
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Repository per RHEL, AlmaLinux, Rocky Linux versione 9
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm
# Repository per RHEL, AlmaLinux, Rocky Linux versione 10
sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-10-x86_64/pgdg-redhat-repo-latest.noarch.rpmpossiamo ora installare la nostra istanza di PostgreSQL
sudo dnf install -y postgresql18-server postgresql18 postgresql18-contribcompletato il processo di installazione dobbiamo inizializzare il cluster database
sudo /usr/pgsql-18/bin/postgresql-18-setup initdbPrima di proseguire con l’installazione, approfondiamo due concetti fondamentali di PostgreSQL.
Cos’è un cluster PostgreSQL? È l’insieme completo dei database gestiti da una singola istanza del server PostgreSQL
- contiene più database
- condivide utenti e ruoli
- condivide configurazione
- condivide WAL
- è legato a una porta TCP
Un cluster = una singola istanza PostgreSQL in esecuzione.
Cos’è un Database PostgreSQL? È un contenitore logico di oggetti (tabelle, viste, funzioni, indici, schemi) all’interno di un cluster.
- contiene tabelle e oggetti
- è isolato dagli altri database
- non può accedere direttamente alle tabelle di un altro database
- condivide utenti e configurazione del cluster
Possiamo ora abilitare il servizio all’avvio del sistema e farlo partire
sudo systemctl enable --now postgresql-18e verificarne lo stato con
systemctl status postgresql-18Verifichiamo l’installazione provando ad accedere all’istanza
$ sudo -iu postgres
$ psql
psql (18.1)
Type "help" for help.
postgres=#se viene visualizzato il prompt postgres=#, l’installazione base è completata e funzionante.
Conclusioni
Abbiamo visto come effettuare l’installazione di base di PostgreSQL. Per l’implementazione in un’ambiente enterprise sarà necessario adottare misure di Cybersecurity (es. connessioni cifrate TLS/SSL, configurazione restrittiva di pg_hba.conf) e di Governance (es. backup, monitoraggio delle performance, gestione dei log) che affronteremo in altri articoli.
