Installazione PostgreSql su Debian e Derivate (Ubuntu, Linux Mint)

Installazione PostgreSql Database Opensource Relazionale ad alta efficienza su Debian e Derivate (Ubuntu, Linux Mint)

Tags: PostgreSql DB Database Debian Ubuntu Linux Mint PSQL

Oggi spiegheremo come installare e configurare (livello base) un database relazionaleOpen source veramente potente e versatile PostgreSql.

Questo database completo, potente e veloce offre innumerevoli funzionalità e funzionalità che database più blasonati come ad esempio MySql o MSSQL non possiedono (opinione personale!).

Oggi ci occuperemo solo di come installare in modo semplice e veloce questo bellissimo e potente Database Relazionale (e per alcuni aspetti anche NOSQL – Not Only SQL).

Per prima cosa lanciamo il comando:

apt-get install postgresql postgresql-contrib


Terminata l’installazione, verifichiamo che tutto sia andato per il verso giusto. Lanciamo i seguenti comandi:

su - postgres


Dovremmo accedere come utente postgres (postgres@xxxxxxxx:~$)

Ora entriamo all'interno dell'applicativo Postgres digitando il seguente comando:

psql


Dovrebbe indicarci la versione (psql (9.6.6) – nel mio caso) e quindi dovremmo accedere direttamente alla console postgres=#

Digitiamo

help


così da visualizzare alcuni comandi utili per la gestione:

  • Type: \copyright for distribution terms
  • \h for help with SQL commands
  • \? for help with psql commands
  • \g or terminate with semicolon to execute query
  • \q to quit

Ora per verificare quale utente sia presente per la gestione dei database digitiamo il seguente comando:

SELECT * from pg_user;
usename   | usesysid | usecreatedb | usesuper | userepl | usebypassrls | passwd   | valuntil | useconfig
----------+----------+-------------+----------+---------+--------------+----------+----------+-----------
postgres | 10 | t | t | t | t | ******** | |


Perfetto, ora aggiungiamo un nuovo utente e creiamo ed assegniamo un database.

Per prima cosa creiamo un nuovo utente:

CREATE USER nome_utente WITH password'password_utente';


Dove nome_utente e password_utente dovranno essere modificati con i vostri dati.

Quindi creiamo un ruolo che l’utente coprirà; nel caso specifico gli abbiamo indicato lo status di supeuser:

CREATE ROLE nome_utente WITH SUPERUSER LOGIN PASSWORD'password_utente';


Ora creeremo un database test per poter iniziare a “giocarci”. Il comando è molto semplice ed assegniamo la proprietà al nostro utente:

CREATE DATABASE test WITH OWNER nome_utente;


Ora dovremmo dire a postgres di voler utilizzare questo database. Niente di più semplice lanciamo il comando:

\c test


Questo comando ci permette di passare da postgres a test. Ora creiamo una tabella:

CREATE TABLE"test"(name charactervarying(20) NOT NULL)WITH(OIDS=FALSE);ALTER TABLE"test" OWNER TO nome_utente;


Ora inseriremo un valore e ne leggeremo il contenuto:

INSERTINTO test(name)VALUES('mio nome');SELECT *FROM test;


Perfetto… il database è pronto :-)

Ora lo configureremo per poterlo utilizzare tramite connessione esterna, altrimenti sarebbe raggiungibile solo tramite localhost.

Spostiamo all’interno della directory:

cd /etc/postgresql/{versione}/main/


Quindi modifichiamo il file pg_hba.conf aggiungendo i seguenti parametri in fondo al file:

Se non dovessimo trovare facilmente il file potremmo utilizzare il comando: find / -name "pg_hba.conf"
# aggiunta nostra configurazionehost all all 0.0.0.0/0 md5


Successivamente dovremmo modificare il file postgresql.conf

listen_addresses ='*'


Ora non ci resta che riavviare il servizio:

systemctl restart postgresql


Nelle scorse guide abbiamo parlato di come installare la bellissima ed utilissima applicazione PGadmin4 che è notevolmente migliorata rispetto alla versione 3 che oltre ad integrare le nuove e più moderne versioni di PGsql gestisce in modo semplice ed intuitivo i nostri database.