In questo tutorial imparerai come installare e utilizzare il database open source PostgreSQL su Ubuntu Linux.
PostgreSQL (o Postgres) è un sistema di gestione di database relazionali (RDBMS) potente, gratuito e open source che ha una solida reputazione per affidabilità, robustezza delle funzionalità e prestazioni. È progettato per gestire vari compiti, di qualsiasi dimensione. È multipiattaforma e il database predefinito per macOS Server.
PostgreSQL potrebbe essere lo strumento giusto per te se sei un fan di un gestore di database SQL semplice da usare. Supporta gli standard SQL e offre funzionalità aggiuntive, pur essendo ampiamente estensibile dall'utente poiché l'utente può aggiungere tipi di dati, funzioni e fare molte altre cose.
In precedenza ho discusso dell'installazione di MySQL su Ubuntu. In questo articolo, ti mostrerò come installare e configurare PostgreSQL, in modo che tu sia pronto per usarlo in base alle tue esigenze.

Installazione di PostgreSQL su Ubuntu
PostgreSQL è disponibile nel repository principale di Ubuntu. Tuttavia, come molti altri strumenti di sviluppo, potrebbe non essere l'ultima versione.
Per prima cosa controlla la versione di PostgreSQL disponibile nei repository di Ubuntu usando questo comando apt nel terminale:
apt show postgresql
Nel mio Ubuntu 18.04, ha mostrato che la versione disponibile di PostgreSQL è la versione 10 (10+190 significa versione 10) mentre PostgreSQL versione 11 è già stata rilasciata.
Package: postgresql Version: 10+190 Priority: optional Section: database Source: postgresql-common (190) Origin: Ubuntu
Sulla base di queste informazioni, puoi decidere se desideri installare la versione disponibile da Ubuntu o se desideri ottenere l'ultima versione rilasciata di PostgreSQL.
Ti mostrerò entrambi i metodi.
Metodo 1:installa PostgreSQL dai repository di Ubuntu
Nel terminale, usa il seguente comando per installare PostgreSQL
sudo apt update
sudo apt install postgresql postgresql-contrib
Inserisci la tua password quando richiesto e dovresti averla installata in pochi secondi/minuti a seconda della velocità di Internet. A proposito, sentiti libero di controllare la larghezza di banda della rete in Ubuntu.
Che cos'è postgresql-contrib?
Il pacchetto postgresql-contrib o contrib contiene alcune utilità e funzionalità aggiuntive che non fanno parte del pacchetto PostgreSQL principale. Nella maggior parte dei casi, è bene avere il pacchetto contrib installato insieme al core di PostgreSQL.
Metodo 2:installazione dell'ultima versione 11 di PostgreSQL in Ubuntu
Per installare PostgreSQL 11, devi aggiungere il repository PostgreSQL ufficiale nel tuo sources.list, aggiungere il suo certificato e quindi installarlo da lì.
Non preoccuparti, non è complicato. Segui questi passaggi.
Aggiungi prima la chiave GPG:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Ora aggiungi il repository con il comando seguente. Se stai usando Linux Mint, dovrai sostituire manualmente `lsb_release -cs` la versione di Ubuntu su cui è basata la tua versione di Mint.
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
Tutto è pronto ora. Installa PostgreSQL con i seguenti comandi:
sudo apt update
sudo apt install postgresql postgresql-contrib
Applicazione GUI PostgreSQL
Puoi anche installare un'applicazione GUI (pgAdmin) per la gestione dei database PostgreSQL:
sudo apt install pgadmin4
Configurazione di PostgreSQL
Puoi controllare se PostgreSQL è in esecuzione eseguendo:
service postgresql status
Tramite il servizio comando puoi anche avviare , fermati o riavvia postgresql . Digitando servizio postgresql e premendo Invio dovrebbe produrre tutte le opzioni. Ora, sugli utenti.
Per impostazione predefinita, PostgreSQL crea un utente speciale postgres che ha tutti i diritti. Per utilizzare effettivamente PostgreSQL, devi prima accedere a quell'account:
sudo su postgres
Il tuo prompt dovrebbe cambiare in qualcosa di simile a:
[email protected]:/home/ubuntu$
Ora esegui la Shell PostgreSQL con l'utilità psql :
psql
Dovrebbe essere richiesto con:
postgress=#
Puoi digitare \q per uscire e \? per aiuto .
Per vedere tutte le tabelle esistenti, inserisci:
\l
L'output sarà simile a questo (premi il tasto q per uscire da questa visualizzazione):

Con \du puoi visualizzare gli utenti PostgreSQL :

Puoi modificare la password di qualsiasi utente (incluso postgres ) con:
ALTER USER postgres WITH PASSWORD 'my_password';
Nota: Sostituisci postgres con il nome dell'utente e mia_password con la password desiderata. Inoltre, non dimenticare il ; (punto e virgola ) dopo ogni affermazione.
Si consiglia di creare un altro utente (è cattiva pratica utilizzare l'impostazione predefinita postgres utente). Per farlo, usa il comando:
CREATE USER my_user WITH PASSWORD 'my_password';
Se esegui \du , vedrai, tuttavia, che mio_utente non ha ancora attributi. Aggiungiamo Superutente ad esso:
ALTER USER my_user WITH SUPERUSER;
Puoi rimuovere utenti con:
DROP USER my_user;
Per accedere come un altro utente, esci dal prompt (\q ) e quindi utilizzare il comando:
psql -U my_user
Puoi connetterti direttamente a un database con -d bandiera:
psql -U my_user -d my_db
Dovresti chiamare l'utente PostgreSQL come un altro utente esistente. Ad esempio, il mio uso è ubuntu . Per accedere, dal terminale utilizzo:
psql -U ubuntu -d postgres
Nota: Devi specificare un database (per impostazione predefinita proverà a connetterti al database con lo stesso nome dell'utente con cui hai effettuato l'accesso).
Se hai un errore:
psql: FATAL: Peer authentication failed for user "my_user"
Assicurati di accedere come utente corretto e modifica /etc/postgresql/11/main/pg_hba.conf con diritti di amministratore:
sudo vim /etc/postgresql/11/main/pg_hba.conf
Nota: Sostituisci 11 con la tua versione (ad es. 10 ).
Qui, sostituisci la riga:
local all postgres peer
Con:
local all postgres md5
Quindi riavvia PostgreSQL :
sudo service postgresql restart
Utilizzo di PostgreSQL è lo stesso che usare qualsiasi altro SQL tipo database. Non entrerò nei comandi specifici, poiché questo articolo parla di come iniziare con una configurazione funzionante. Tuttavia, ecco un succo molto utile a cui fare riferimento! Inoltre, la pagina man (man psql ) e la documentazione sono molto utili.
Concludendo
Si spera che la lettura di questo articolo ti abbia guidato attraverso il processo di installazione e preparazione di PostgreSQL su un sistema Ubuntu. Se non conosci SQL, dovresti leggere questo articolo per conoscere i comandi SQL di base:
Comandi SQL di baseIn caso di problemi o domande, non esitare a chiedere nella sezione commenti.