PostgreSQL è un sistema avanzato di gestione di database relazionale ad oggetti (ORDBMS), derivato dal database management system Berkeley Postgres.
Download (HTTP): http://gd.tuwien.ac.at/db/postgresql/source/v7.4.6/postgresql-7.4.6.tar.bz2
Download (FTP): ftp://ftp.fr.postgresql.org/source/v7.4.6/postgresql-7.4.6.tar.bz2
Download MD5 sum: f0ea2b372a7bdaf2613e92176ebf5e0f
Dimensione del download: 10.2 MB
Stima dello spazio su disco richiesto: 236 MB
Stima del tempo di costruzione: 1.21 SBU
Affinché configure rilevi in maniera corretta Docbook SGML DTD (v3.1), potrebbe essere necessario rimuovere le definizioni di catalogo OpenSP dai cataloghi SGML di sistema. A questo scopo utilizzare il seguente comando prima di costruire il pacchetto:
sed -i.orig \
-e "/CATALOG \/etc\/sgml\/OpenSP-1.5.1.cat/d" \
/etc/sgml/catalog \
/etc/sgml/sgml-docbook.cat
Installare PostgreSQL con i seguenti comandi:
patch -Np1 -i ../postgresql-7.4.6-dsssl_fix-1.patch &&
./configure --prefix=/usr --enable-thread-safety &&
make &&
make install &&
chown -R root:root /usr/share/doc/postgresql/html
L'installazione standard fornisce solo i file header necessari allo sviluppo di applicazioni client. Le applicazioni server richiedono l'intero albero di include di PostgreSQL che può essere installato usando il seguente comando:
make install-all-headers
Se si sta aggiornando un sistema esistente e si sta per installare i nuovi file su quelli vecchi bisognerebbe fare un back-up dei propri dati, fermare l'esecuzione del vecchio e seguire le istruzioni sulla documentazione ufficiale PostgreSQL .
Inizializzare un cluster di database con i seguenti comandi:
mkdir -p /srv/pgsql/data &&
useradd -d /srv/pgsql/data postgres &&
chown postgres /srv/pgsql/data &&
su - postgres -c '/usr/bin/initdb -D /srv/pgsql/data'
Avviare il server del database con il seguente comando:
su - postgres -c '/usr/bin/postmaster -D /srv/pgsql/data > \
/srv/pgsql/data/logfile 2>&1 &'
Creare un database e verificare l'installazione:
su - postgres -c '/usr/bin/createdb test' &&
echo "create table t1 ( name varchar(20), state_province varchar(20) );" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Billy', 'NewYork');" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Evanidus', 'Quebec');" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "insert into t1 values ('Jesse', 'Ontario');" \
| (su - postgres -c '/usr/bin/psql test ') &&
echo "select * from t1;" | (su - postgres -c '/usr/bin/psql test')
--enable-thread-safety: questo switch rende le librerie client thread-safe, permettendo a thread concorrenti in programmi libpq e ECPG di gestire in modo sicuro i loro handle di connessioni privati.
chown -R root:root /usr/share/doc/postgresql/html: questo comando corregge la proprietà impropria di alcuni file di documentazione.
useradd -d /srv/pgsql/data postgres: crea un utente non privilegiato che eseguirà il server del database.
createdb test, create table t1 , insert into t1 values..., select * from t1: crea un database, gli aggiunge una tabella, inserisce alcune righe nella tabella e ci applica una select per verificare che l'installazione stia funzionando in momdo corretto.
$PGDATA/pg_ident.con, $PGDATA/pg_hba.conf e $PGDATA/postgresql.conf
La variabile di ambiente PGDATA è usata per distinguere i cluster di database l'uno dall'altro, impostandola al valore della directory che contiene il cluster desirato. I tre file di configurazione esistono in ogni directory indicata da PGDATA/. Dettagli sul formato dei file e le optioni che si possono usare in ciascuno di essi sono reperibili a file:///usr/share/doc/postgresql/html/index.html.
Installare lo script di inizializzazione /etc/rc.d/init.d/postgresql incluso nel pacchetto blfs-bootscripts-6.0.
make install-postgresql
Il pacchetto PostgreSQL contiene clusterdb, createdb, createlang, createuser, dropdb, droplang, dropuser, ecpg, initdb, initlocation, ipcclean, pg_config, pg_controldata, pg_ctl, pg_dump, pg_dumpall, pg_encoding, pg_id, pg_resetxlog, pg_restore, pgtclsh, pgtksh, pltcl_delmod, pltcl_listmod, pltcl_loadmod, postgres, postmaster, psql, vacuumdb, libecpg, libpgtcl, libpgtypes, libpq e vari moduli di insiemi di caratteri.
ipcclean rimuove memoria condivisa e semafori lasciati da un server che è terminato in maniera anomala.
pg_controldata restituisce informazioni inizializzate durante initdb, tipo la versione di catalogo e il server.
pg_dump annota dati e metadati del database in script che sono usati per ricreare il database.
pg_resetxlog cancella il log write-ahead e opzionalmente resetta alcuni campi nel file pg_control.
pgtclsh è un'interfaccia shell Tcl estesa con funzionalità di accesso al database PostgreSQL.
pgtksh è un'interfaccia shell Tcl/Tk estesa con funzionalità di accesso al database PostgreSQL.
Last updated on