PostgreSQL è un sistema di gestione di database relazionali a oggetti (ORDBMS) disponibile per molte piattaforme tra cui Linux, FreeBSD, Solaris, Microsoft Windows e Mac OS X. È rilasciato sotto la licenza PostgreSQL, che è una licenza in stile MIT, ed è quindi un software gratuito e open source. PostgreSQL è sviluppato dal PostgreSQL Global Development Group, composto da una manciata di volontari della comunità impiegati e supervisionati da aziende come Red Hat ed EnterpriseDB.
La stragrande maggioranza delle distribuzioni Linux ha PostgreSQL disponibile nei pacchetti forniti. Mac OS X a partire da Lion ha il server PostgreSQL come database predefinito standard nell'edizione server e gli strumenti client PostgreSQL nell'edizione desktop.
Nuove funzionalità in PostgreSQL 9.3:
PostgreSQL va oltre il tradizionale set di funzionalità del database relazionale con nuove e rivoluzionarie funzionalità esclusive di PostgreSQL. I principali miglioramenti includono:
- Rendi le visualizzazioni semplici aggiornabili automaticamente
- Aggiungi molte funzionalità per il tipo di dati JSON, inclusi operatori e funzioni per estrarre elementi dai valori JSON
- Implementa l'opzione LATERAL standard SQL per le sottoquery della clausola FROM e le chiamate di funzione
- Consenti ai wrapper di dati esterni di supportare le scritture (inserimenti/aggiornamenti/eliminazioni) su tabelle esterne
- Aggiungi un wrapper di dati esterni Postgres per consentire l'accesso ad altri server Postgres
- Aggiungi il supporto per gli attivatori di eventi
- Aggiungi la possibilità facoltativa di eseguire il checksum delle pagine di dati e segnalare il danneggiamento
- Impedisci che gli aggiornamenti delle righe dei campi non chiave blocchino i controlli della chiave esterna
- Riduci notevolmente i requisiti di memoria condivisa System V
Ecco il tutorial sull'installazione di PostgreSQL 9.3.4 su Fedora 16.
Apri Terminale.
Passa all'utente root.
[raj@geeksite~/]$ su -
Installa PosgreSQL 9.3.4:
Di default i pacchetti PostgreSQL sono disponibili nel repository; si prega di emettere il seguente comando per l'installazione.
[root@geeksite~/]# yum install postgresql postgresql-server postgresql-libs postgresql-devel postgresql-contrib
Configurazione del server PostgreSQL 9.3.4:
Inizializza PostgreSQL.
[root@geeksite~/]# postgresql-setup initdb
PostgreSQL normalmente ascolta solo sui localhost, se desideri abilitare PostgreSQL ad ascoltare su tutti gli indirizzi IP; modifica /var/lib/pgsql/data/postgresql.conf.
[root@geeksite~/]# vi /var/lib/pgsql/data/postgresql.conf
Vai alla sezione Connessioni e Comunicazioni, trova la variabile "listen_address". Decommenta "listen_addresses" e posiziona "*" invece di "localhost"
Prima della modifica:
#listen_addresses = "localhost"
Dopo la modifica:
listen_addresses = "*"
Aggiungi la tua rete per accedere al database da remoto; Modifica /var/lib/pgsql/data/pg_hba.conf.
[root@geeksite~/]# vi /var/lib/pgsql/data/pg_hba.conf
Aggiungi la seguente riga in base alla tua configurazione di rete con l'autenticazione della password md5 (Abilita l'accesso remoto al database).
# IPv4 local connections: host all all 127.0.0.1/32 md5 host all all 107.155.94.0/24 md5 # IPv6 local connections: host all all ::1/128 md5
Riavvia il server PostgreSQL.
[root@geeksite~/]# systemctl restart postgresql.service
Avvio automatico all'avvio del sistema.
[root@geeksite~/]# systemctl enable postgresql.service
Conferma l'ascolto di PostgreSQL.
[root@itzgeek ~]# netstat -antup | grep 5432 tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 1006/postgres tcp6 0 0 :::5432 :::* LISTEN 1006/postgres
Creazione del database:
Accedi come utente postgres.
[root@geeksite~/]$ su -l postgres
creare il database chiamato “test”
-bash-4.2$ createdb test
Accedi al database.
-bash-4.2$ psql test
Crea un nuovo utente chiamato “raj” per gestire i database.
test=# CREATE USER raj WITH SUPERUSER LOGIN PASSWORD 'raj';
Accedi con il superutente.
sam@geeksite~/$ psql -h localhost -d test -U raj
Questo è tutto!.