PostgreSQL è tra i database relazionali open source più apprezzati, assieme a MySQL. Negli ultimi anni le differenze tra PostegreSQL e MySQL si sono ridotte notevolmente, tanto che si parla di convergenza tra le due opzioni. Oggi vedremo come installare e configurare PostgreSQL su una macchina Linux. Per semplicità useremo come riferimento la procedura di installazione su Ubuntu.

Possiamo iniziare dal pannello di amministrazione

SistemaAmministrazioneGestore pacchetti

oppure procedere a linea di comando

sudo apt-get install postgresql

Terminata l'installazione ci colleghiamo al client

sudo -u postgres psql postgres

Qui andiamo a modificare la password di accesso al database, tramite il comando

\password postgres

Questo basta e avanza per lavorare in locale. Se invece vogliamo abilitare il collegamento al database da macchine diverse (sia in LAN che in WAN), dovremo editare il file di configurazione, ad esempio

cd /etc/postgresql/8.4/main/

sudo gedit postgresql.conf

e cercare la riga

#listen_addresses = 'localhost'

Che cambiamo come segue

listen_addresses = '*'

Questo per poter lavorare qualsiasi sia la tipologia di IP assegnata al server. A questo punto dobbiamo anche specificare da quali reti accetteremo connessioni. Sempre nella cartella main di postgreSQL editiamo il file

sudo gedit pg_hba.conf

E cerchiamo la riga

# IPv4 local connections:

host all all 127.0.0.1/32 md5

Qui indichiamo le sottoreti che possono accedere al nostro database server. Per includere anche una LAN del tipo 192.168.1.x aggiungeremo una riga del tipo (submask inclusa):

# IPv4 local connections:

host all all 127.0.0.1/32 md5

host all all 192.168.1.0/16 md5

Adesso possiamo finalmente far ripartire il server, eseguendo

sudo service postgresql restart

e collegarci al DB scegliendo un qualsiasi client visuale, come ad esempio pgAdmin oppure Squirrel. Se usiamo Squirrel dovremo scaricare il driver JDBC, ad esempio da qui

http://jdbc.postgresql.org/

e poi aggiungere il driver in questo modo

  1. Cliccare sul tab Drivers
  2. Doppio click su PostgreSQL per aprire il pannellino Change Driver: PostgreSQL
  3. Cliccare sul tab Extra Class Path e poi su Add
  4. Cercare il driver nel file system e confermarlo cliccando su Open

Dopodiché potremo collegarci al DBMS usando la connect string

jdbc:postgresql:postgres:5432

oppure

jdbc:postgresql://localhost:5432/postgres

usando lo user postgres e la password che abbiamo specificato prima. Da Squirrel (o dal client) possiamo facilmente creare un nuovo database usando il comando

CREATE DATABASE prova;

e quindi aprire una nuova connessione al nostro database

jdbc:postgresql://localhost:5432/prova

Se vogliamo, possiamo di nuovo collegarci al client (da shell) ed eseguire il comando \l per listare tutti i database disponibili, per verificare di avere creato correttamente il database prova. Infine creiamo un utente, ad esempio

CREATE USER pippo PASSWORD 'ciao';

anche qui, se vogliamo, possiamo verificare la creazione dell'utente dal client, usando il comando \du, che dovrebbe ritornare qualcosa del genere

Nome ruolo | Attributi | Membro di

------------+--------------+-----------

pippo | | {}

postgres | Superuser | {}

informazioni che possiamo recuperare anche via SQL

select * from pg_user;

Abbiamo finito! PostgreSQL è up and running, non resta che creare le tabelle che ci servono e iniziare a prendere confidenza con lo strumento.

Ti potrebbero interessare

I trend da conoscere nel mondo dei contenuti

Il content marketing e la SEO hanno raggiunto degli ottimi risultati. Ci stiamo dirigendo verso un futuro luminoso di contenuti più utili e tecnicamente sorprendenti che siano in linea con le abitudini, le preferenze e le esigenze di [...]

Super Follow, la nuova funzione di Twitter per monetizzare

Continua la sfida tra i vari social network per migliorare le piattaforme e offrire sempre più funzionalità per gli utenti. Questa volta è il turno di Twitter che ha annunciato un paio di grandi funzionalità in arrivo: la possibilità [...]

Google e l’impatto dell’aggiornamento sui Core Web Vitals

Google e l’impatto dell’aggiornamento sui Core Web Vitals

Danny Sullivan di Google ha recentemente discusso dell'impatto previsto dall’aggiornamento del motore di ricerca in merito all’introduzione dei Core Web Vitals [...]

Cisco
DELL
Intel
NetApp
OnApp
Ripe