Skip to main content

PostgreSQL su Ubuntu Linux

PostgreSQL è un ottimo database relazionale opensource molto potente che niente ha da invidiare ad altri database opensource (MySQL, MariaDB) o proprietari (Oracle, DB2, MS SQLServer, …).

Vediamo come installare e configurare PostgreSQL su Ubuntu Linux.


Installazione

E’ possibile installarlo direttamente da Ubuntu Software Center perchè è già presente nei repository ufficiali di Ubuntu, ma il mio consiglio è quello di aggiungere i repository ufficiali di PostgreSQL in modo da avere sempre la versione più aggiornata.

Innanzitutto aggiungiamo il repository ufficiale di PostgreSQL creando il file
/etc/apt/sources.list.d/pgdg.list con il seguente comando

sudo nano /etc/apt/sources.list.d/pgdg.list

ed inserendo la seguente riga:

deb http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main

in questo caso il repository si riferisce ad Ubuntu 14.04 Trusty Tahr, se si volesse indicare il repository di un’altra versione di Ubuntu è sufficiente sostutuire trusty-pgdg con il nome della versione desiderata, ad esempio per Ubuntu 14.10 Utopic Unicorn di indicherà utopic-pgdg.

Ora scarichiamo il certificato del repository ed installiamo PostgreSQL con i seguenti comandi:

sudo apt-get install wget ca-certificates
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install postgresql pgadmin3

con questo comando viene installata la versione più aggiornata di PostgreSQL (in questo momento la versione 9.4 che è appena stata rilasciata il 5 febbraio 2015); se per qualche motivo si desidera una versione diversa è sufficiente indicarla nel comando: esempio postgresql-9.3.

Inoltre nel comando ho indicato il pacchetto pgadmin3 che è il client grafico per gestire PostgreSQL


Setup / Configurazione

Attivare l’utente postgres assegnandogli una password:

sudo -u postgres psql postgres
\password postgres # indicare la password desiderata
\quit

A questo, utilizzando il client grafico pgadmin3, creiamo una connessione al server PostgreSQL

PostgreSQL crea connessione

e creaiamo un nuovo database

PostgreSQL create database

Permettere la connessione remota a PostgreSQL

L’installazione di default di PostgreSQL permette la connessione al server sulla porta 5432 ma solo da locale.

Per permettere l’accesso remoto a PostgreSQL bisogna modificare le seguenti configurazioni:

sudo nano /etc/postgresql/9.4/main/postgresql.conf

modificare la seguente riga in questo modo:

listen_addresses='*'

per abilitare tutti, oppure

listen_addresses='192.168.0.87'

per abilitare solo le connessioni da uno specifico indirizzo IP.

Quindi modificare la configurazione per le autenticazioni:

sudo nano /etc/postgresql/9.4/main/pg_hba.conf

aggiungendo la seguente riga:

host    all     all     0.0.0.0/0           md5    # abilita tutti
#host   all     all     192.168.0.87/32     md5     # abilita solo l'IP 192.168.0.87
#host   all     all     192.168.0.0/24      md5     # abilita solo LAN

infine riavviare o ricaricare il servizio:

sudo /etc/init.d/postgresql restart

Riferimenti per approdondimenti alla configurazione del file pg_hba.conf


Connessione JDBC a PostgreSQL

Ovviamente è possibile conettersi a PostgreSQL tramite i driver JDBC per sviluppo o utilizzo di tool grafici.

Ad esempio, per chi utilizza il tool grafico DBEdit 2 scaricare il driver JDBC di PostgreSQL e metterlo nella cartella DBEDit insieme agli altri.

Avviare DBEdit e creare la nuova connessione come Other con i seguenti parametri:

  • URL: jdbc:postgresql://ip_server:5432/db_name
  • username
  • password

Riferimenti per approdondimenti relativi ai parametri della stringa di connessione JDBC PostgreSQL


Altri riferimenti per approfondimenti

https://help.ubuntu.com/community/PostgreSQL

http://www.postgresql.org/download/linux/ubuntu/

https://wiki.postgresql.org/wiki/Apt

(Letto 578 volte di cui 15 negli ultimi 30gg)
twittergoogle_pluslinkedinmailby feather

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*

code