Nella lezione precedente abbiamo visto cos'è PostgreSQL e perché è uno dei database relazionali più usati al mondo.

Adesso passiamo alla pratica: installeremo PostgreSQL sul tuo sistema operativo e verificheremo che sia correttamente configurato.

Alla fine della lezione sarai in grado di:

  • installare PostgreSQL;
  • verificare che l'installazione sia andata a buon fine;
  • verificare che il server PostgreSQL sia in esecuzione;
  • collegarti a PostgreSQL tramite psql;
  • eseguire la tua prima query.

Non è necessario conoscere già SQL: utilizzeremo solo pochi comandi per verificare che tutto funzioni correttamente.

Quale versione installare

Se stai installando PostgreSQL per la prima volta e non hai già un database esistente da aggiornare, installa l'ultima versione stabile disponibile per il tuo sistema operativo.

Puoi trovare i pacchetti e gli installer per Windows, macOS e Linux nella pagina ufficiale dei download di PostgreSQL.

💡 Hai già PostgreSQL installato?
Controlla la versione con:

psql --version

Se stai utilizzando una versione recente e supportata, puoi seguire la serie senza particolari problemi. Se invece utilizzi una versione molto vecchia, alcuni comandi o comportamenti potrebbero differire: in quel caso valuta un aggiornamento.

Cosa stiamo installando?

Prima di iniziare, è utile chiarire una distinzione che incontreremo più volte durante il corso.

Quando installiamo PostgreSQL non stiamo semplicemente installando un programma con cui scrivere SQL.

Stiamo installando un database server, cioè il programma che si occupa di gestire i database e di rispondere alle richieste dei client.

Durante l'installazione incontreremo anche alcuni strumenti che ci permettono di comunicare con il server:

  • PostgreSQL Server: è il database server vero e proprio;
  • psql: è il client da terminale che ci permette di collegarci a PostgreSQL ed eseguire comandi SQL;
  • pgAdmin 4: è un'interfaccia grafica per amministrare PostgreSQL.

Possiamo quindi immaginare l'ambiente in questo modo:

Pacchetto di installazione - PostgreSQL

Per iniziare ci basteranno PostgreSQL Server e psql.

pgAdmin sarà utile più avanti, quando vorremo utilizzare un'interfaccia grafica per lavorare con il database.

Installazione su Windows

1. Scarica l'installer

Vai alla pagina ufficiale dei download di PostgreSQL per Windows e scarica l'installer per la versione che vuoi utilizzare.

L'installer Windows ufficiale è fornito da EDB e include PostgreSQL Server, pgAdmin e Stack Builder.

Pagina di download EDB

2. Avvia l'installer

Apri il file .exe scaricato.

Se Windows ti chiede il permesso di eseguirlo, clicca su .

3. Scegli la cartella di installazione

L'installer ti chiederà dove installare PostgreSQL.

Puoi lasciare il percorso proposto di default.

Se hai esigenze particolari, puoi naturalmente scegliere una cartella diversa.

4. Scegli i componenti

Lascia selezionati i componenti proposti di default.

In particolare, assicurati che siano presenti:

  • PostgreSQL Server
  • pgAdmin 4
  • Command Line Tools

I Command Line Tools includono strumenti da terminale come psql, che utilizzeremo durante il corso.

5. Imposta la password

Durante l'installazione ti verrà chiesta una password per l'utente PostgreSQL postgres.

Sceglila con attenzione e annotala in un posto sicuro.

La utilizzeremo per collegarci al database.

💡 L'utente postgres è l'utente amministrativo iniziale creato dall'installazione. Più avanti vedremo come creare altri utenti e come gestire ruoli e permessi.

6. Scegli la porta

L'installer ti chiederà su quale porta PostgreSQL dovrà ascoltare le connessioni.

Lascia il valore predefinito:

5432

La porta 5432 è quella normalmente utilizzata da PostgreSQL.

Cambiala soltanto se hai un motivo specifico, ad esempio se sulla stessa porta è già in esecuzione un'altra istanza di PostgreSQL.

7. Locale

L'installer ti chiederà anche di scegliere il locale.

Per questa serie puoi lasciare il valore proposto di default.

Non è necessario modificare questa impostazione per iniziare a lavorare con PostgreSQL.

8. Avvia l'installazione

A questo punto puoi procedere con l'installazione.

Clicca su Next fino all'ultimo passaggio e poi su Install.

L'operazione potrebbe richiedere qualche minuto.

Installazione

Stack Builder

Al termine dell'installazione potrebbe essere avviato automaticamente Stack Builder.

Stack Builder serve per installare componenti, driver ed estensioni aggiuntive.

Per questa serie non ci serve, quindi puoi semplicemente chiuderlo.

Verificare l'installazione su Windows

Una volta terminata l'installazione, dobbiamo verificare che il client psql sia disponibile.

Apri il Prompt dei comandi cercando cmd nel menu Start e digita:

psql --version

Dovresti vedere qualcosa di simile:

psql (PostgreSQL) 18.x

Il numero preciso della versione dipenderà da quella che hai installato.

Questo comando verifica che il programma psql sia installato e disponibile nel PATH.

Non abbiamo ancora verificato il collegamento al server: quello sarà il prossimo passaggio.

Se psql non viene riconosciuto

Se Windows restituisce un messaggio simile a:

'psql' is not recognized as an internal or external command

💡Significa che il programma potrebbe essere installato correttamente, ma il suo percorso non è presente nel PATH di Windows.

In questo caso puoi aggiungere manualmente la cartella bin di PostgreSQL alle variabili d'ambiente.

1. Apri il menu Start

Cerca:

Variabili d'ambiente

2. Seleziona la voce:

Modifica le variabili d'ambiente di sistema

Start >> Modifica le variabili d'ambiente di sistema

3. Nella finestra "Proprietà del sistema"

Clicca su:

Variabili d'ambiente

Finestra proprietà del sistema

4. Nella sezione "Variabili di sistema"

Seleziona:

Path

e clicca su:

Modifica

Variabili d'ambiente

5. Aggiungi il percorso di PostgreSQL

Aggiungi alla lista:

C:\Program Files\PostgreSQL\18\bin

💡 Il numero 18 è solo un esempio. Sostituiscilo con la versione che hai effettivamente installato.

Path

Chiudi e riapri il Prompt dei comandi, quindi prova nuovamente:

psql --version

Un'alternativa

Se non vuoi modificare il PATH, puoi eseguire psql specificando direttamente il percorso completo:

"C:\Program Files\PostgreSQL\18\bin\psql.exe" --version

Anche in questo caso, sostituisci 18 con la versione installata.

Installazione su macOS

Su macOS puoi utilizzare l'installer fornito da EDB oppure altre modalità supportate, come Homebrew o Postgres.app.

Per mantenere la procedura il più possibile simile a quella Windows, in questa guida utilizzeremo l'installer EDB.

1. Scarica l'installer

Vai alla pagina ufficiale dei download di PostgreSQL per macOS e scarica l'installer per la tua versione di macOS.

L'installer EDB include PostgreSQL Server, pgAdmin e Stack Builder.

Pagina di download EDB

2. Avvia l'installer

Apri il file .dmg scaricato e segui la procedura guidata.

Se macOS blocca l'apertura dell'applicazione, potrebbe essere necessario autorizzarla da:

Impostazioni di sistema → Privacy e sicurezza

3. Componenti, password e porta

Durante l'installazione troverai impostazioni analoghe a quelle viste su Windows.

Lascia i valori predefiniti, imposta una password per l'utente postgres e annotala.

Per la porta, lascia:

5432

Anche il locale può essere lasciato al valore proposto dall'installer.

Stack Builder

Anche su macOS potrebbe essere disponibile Stack Builder al termine dell'installazione.

Non ci serve per questa serie, quindi puoi chiuderlo.

Verificare l'installazione su macOS

Apri il Terminale.

Puoi farlo rapidamente con Spotlight premendo:

⌘ + Spazio

e cercando Terminale.

Poi esegui:

psql --version

Dovresti vedere qualcosa di simile:

psql (PostgreSQL) 18.x

Se psql non viene trovato

Se il terminale non riconosce il comando psql, puoi aggiungere la directory bin di PostgreSQL al PATH.

Con l'installer EDB, un percorso tipico è:

export PATH="/Library/PostgreSQL/18/bin:$PATH"

Sostituisci 18 con la versione che hai installato.

Dopo aver eseguito il comando, verifica nuovamente:

psql --version

Se vuoi rendere permanente la modifica, puoi aggiungere il comando al file di configurazione della shell che utilizzi, ad esempio ~/.zshrc.

💡 Se utilizzi una modalità di installazione diversa dall'installer EDB, il percorso di psql potrebbe essere differente.

Installazione su Linux

In questa guida utilizzeremo Ubuntu/Debian come riferimento.

Su Linux PostgreSQL viene normalmente installato tramite il gestore dei pacchetti della distribuzione.

Per le distribuzioni supportate, PostgreSQL fornisce anche istruzioni specifiche per l'installazione.

1. Aggiorna i repository e installa PostgreSQL

Apri il terminale ed esegui:

sudo apt update
sudo apt install postgresql postgresql-contrib

Il gestore dei pacchetti installerà PostgreSQL e i componenti disponibili nei repository della tua distribuzione.

💡 I repository della distribuzione potrebbero non offrire sempre l'ultima versione di PostgreSQL. Se hai bisogno di una versione specifica o dell'ultima versione disponibile, consulta le istruzioni ufficiali del repository PostgreSQL per Ubuntu o Debian.

2. Verifica che il servizio sia attivo

Dopo l'installazione, controlla lo stato del servizio:

sudo systemctl status postgresql

Dovresti vedere uno stato simile a:

active (running)

Questo significa che il server PostgreSQL è in esecuzione.

Puoi uscire dalla schermata dello stato con q.

3. Verifica la versione

Ora controlliamo che psql sia disponibile:

psql --version

Dovresti ottenere qualcosa di simile:

psql (PostgreSQL) 18.x

Primo accesso a PostgreSQL

A questo punto PostgreSQL è installato.

Abbiamo però verificato due cose diverse:

  1. che il programma psql sia disponibile;
  2. che il server PostgreSQL sia in esecuzione.

Adesso facciamo il passo successivo: colleghiamoci al server.

Windows e macOS

Apri il Prompt dei comandi o il Terminale e digita:

psql -U postgres

L'opzione:

-U postgres

specifica che vogliamo collegarci utilizzando l'utente PostgreSQL postgres.

Ti verrà chiesta la password che hai impostato durante l'installazione.

Se la password è corretta e il server è raggiungibile, entrerai nella console interattiva di PostgreSQL.

Vedrai qualcosa di simile:

postgres=#

Linux

Su molte installazioni Linux l'autenticazione iniziale utilizza l'utente del sistema operativo postgres.

Puoi quindi accedere con:

sudo -i -u postgres
psql

Se tutto è andato a buon fine, vedrai:

postgres=#

Siamo finalmente dentro PostgreSQL.

La nostra prima query

Adesso facciamo una cosa molto semplice.

Scrivi:

SELECT 2 + 2;

e premi Invio.

PostgreSQL dovrebbe restituire:

4

Abbiamo appena eseguito la nostra prima query SQL.

Non abbiamo creato nessuna tabella e non abbiamo ancora lavorato con dati reali.

Abbiamo però verificato una cosa importante: il client psql riesce a comunicare con il server PostgreSQL e il server è in grado di eseguire una query.

Conosciamo il nostro utente

Possiamo fare un'altra verifica:

SELECT current_user;

Questo comando restituisce l'utente PostgreSQL con cui siamo collegati.

Nel nostro caso dovrebbe restituire:

 postgres

Conosciamo il database corrente

Possiamo anche chiedere a PostgreSQL a quale database siamo collegati:

SELECT current_database();

Il risultato sarà il nome del database corrente.

Questi semplici comandi ci permettono di iniziare a prendere confidenza con l'ambiente PostgreSQL.

Uscire da psql

Quando vuoi terminare la sessione, puoi utilizzare:

\q

e premere Invio.

Tornerai al normale terminale del sistema operativo.

💡 I comandi che iniziano con \, come \q, non sono query SQL. Sono comandi propri di psql, chiamati meta-command.

pgAdmin: l'interfaccia grafica

Finora abbiamo utilizzato il terminale e psql.

Esiste però anche un'interfaccia grafica che possiamo utilizzare per amministrare PostgreSQL: pgAdmin 4.

pgAdmin è uno strumento open source dedicato alla gestione e allo sviluppo con PostgreSQL e può essere utilizzato sia in modalità desktop sia in modalità web.

Su Windows e macOS è incluso nell'installer EDB che abbiamo utilizzato in questa guida.

Su Linux può essere installato separatamente.

💡 Non è necessario utilizzare pgAdmin per lavorare con PostgreSQL. psql è già sufficiente per collegarsi al server ed eseguire SQL.

Durante il corso utilizzeremo entrambi gli strumenti quando sarà utile:

  • psql ci permetterà di capire cosa succede realmente quando lavoriamo con PostgreSQL;
  • pgAdmin ci offrirà un'interfaccia grafica utile per esplorare e amministrare il database.

Installare pgAdmin su Linux

Se utilizzi Linux e vuoi installare pgAdmin, puoi seguire le istruzioni ufficiali del progetto.

Su Ubuntu e Debian è disponibile un repository APT dedicato.

La procedura ufficiale prevede, in sintesi, l'aggiunta del repository e successivamente l'installazione del pacchetto:

sudo apt install pgadmin4

Puoi anche scegliere di installare solamente la versione desktop:

sudo apt install pgadmin4-desktop

oppure solamente quella web:

sudo apt install pgadmin4-web

Se installi la versione web, dovrai completare anche la configurazione iniziale con:

sudo /usr/pgadmin4/bin/setup-web.sh

Per questa serie, comunque, non è necessario installare pgAdmin su Linux per poter proseguire.

PostgreSQL e psql sono sufficienti.

Problemi comuni

Durante l'installazione potresti incontrare alcuni problemi.

psql non viene trovato

Se ottieni un errore come:

command not found: psql

oppure:

'psql' is not recognized...

il problema è generalmente legato al PATH.

Controlla che la directory bin di PostgreSQL sia presente nel PATH oppure utilizza il percorso completo dell'eseguibile.

Il server non risponde

Se psql è installato ma il collegamento al server non funziona, verifica innanzitutto che PostgreSQL sia in esecuzione.

Su Linux puoi utilizzare:

sudo systemctl status postgresql

Su Windows e macOS puoi verificare che il servizio/server PostgreSQL sia stato avviato correttamente.

Password errata

Se PostgreSQL rifiuta la password, controlla di utilizzare quella impostata durante l'installazione per l'utente postgres.

Ricorda inoltre che la password dell'utente PostgreSQL è una cosa diversa dalla password del tuo account Windows, macOS o Linux.

Porta occupata

PostgreSQL utilizza normalmente la porta:

5432

Se hai già un'altra istanza di PostgreSQL o un altro servizio che utilizza quella porta, potrebbe essere necessario configurare una porta differente.

Non modificare la porta senza un motivo: utilizzare 5432 rende più semplice seguire gli esempi della documentazione e del corso.

Cosa abbiamo imparato

In questa lezione abbiamo:

  • installato PostgreSQL;
  • imparato la differenza tra PostgreSQL Server, psql e pgAdmin;
  • verificato che psql sia disponibile;
  • verificato che il server PostgreSQL sia in esecuzione;
  • effettuato il primo collegamento al database;
  • eseguito la nostra prima query SQL;
  • utilizzato alcuni comandi per conoscere l'utente e il database corrente;
  • imparato a uscire da psql.

La cosa più importante da portarsi a casa è la distinzione tra server e client.

PostgreSQL Server è il programma che gestisce i database.

psql, invece, è uno degli strumenti con cui possiamo comunicare con quel server.

pgAdmin svolge un ruolo simile, ma attraverso un'interfaccia grafica.

Prossima lezione

Ora che PostgreSQL è installato e sappiamo collegarci al server, possiamo iniziare a occuparci della sua configurazione.

Nella prossima lezione vedremo dove si trovano i principali file di configurazione di PostgreSQL e a cosa servono:

  • postgresql.conf, per le impostazioni generali del server;
  • pg_hba.conf, per la gestione dell'autenticazione;
  • pg_ident.conf, per la mappatura tra utenti del sistema operativo e utenti PostgreSQL.

Vedremo inoltre la differenza tra un reload della configurazione e un riavvio del server e impareremo a individuare e interrompere una query che sta consumando troppe risorse.

Questi strumenti ci permetteranno di iniziare a gestire PostgreSQL non solo come database a cui inviare query, ma come vero e proprio server da amministrare.

Fonti

Le procedure e le informazioni tecniche di questa lezione sono state confrontate con la documentazione ufficiale dei progetti.

  • PostgreSQL — Download: pagina ufficiale per individuare installer e pacchetti per Windows, macOS, Linux e altri sistemi. PostgreSQL Downloads
  • PostgreSQL — Documentazione ufficiale: manuali e documentazione delle versioni supportate. PostgreSQL Documentation
  • PostgreSQL — Windows installers: informazioni sull'installer EDB per Windows, sui componenti inclusi e su Stack Builder. PostgreSQL Windows installers
  • PostgreSQL — macOS packages: installer EDB, Postgres.app e altre modalità di installazione per macOS. PostgreSQL macOS packages
  • PostgreSQL — Linux: informazioni sull'installazione attraverso i sistemi di gestione dei pacchetti delle distribuzioni Linux. PostgreSQL Linux downloads
  • pgAdmin: sito ufficiale del progetto e informazioni sullo strumento di amministrazione di PostgreSQL. pgAdmin
  • pgAdmin — Download: pacchetti e modalità di installazione per Windows, macOS e Linux. pgAdmin Downloads
  • pgAdmin — Documentazione: documentazione ufficiale per l'utilizzo e la configurazione di pgAdmin 4. pgAdmin Documentation