1. Ad installare un server database PostgreSql nella nostra macchina
2. Predisporlo per un utilizzo dello stesso in rete
3. Salvare la base dati
4. Interfacciarvisi con Openoffice Base
5. Trasferire i dati da un database Openoffice Base al nuovo database attraverso uno script Python
La prima cosa da fare, è installare il server PostgreSql.
Su macchine Linux, è ovviamente presente nei repository. Basta cliccarci sopra e scaricare il pacchetto. Installate anche PgAdmin, che sarà l'interfaccia grafica che utilizzerete per amministrare il database
Per macchine Windows, basta andare sul sito, scaricare il pacchetto e installarlo.
D'ora in avanti, parlerò solo per utenze Linux. Se dovessero nascere problemi per utenze Windows, postatele. Le risolviamo man mano.
accedere al server sul database di prova (template1), al fine di impostare una password per l'utente già creato in automatico in fase di installazione: “postgres”. Senza questa procedura di impostazione di password, non si riuscirebbe ad accedere al server
Codice: Seleziona tutto
sudo -u postgres psql template1
Codice: Seleziona tutto
ALTER USER postgres with PASSWORD 'password';
Fatto questo, usciamo dal prompt psql e torniamo al prompt ubuntu con la seguente istruzione
Codice: Seleziona tutto
\q;
sudo -u postgres createdb nomedatabase
Non possiamo ancora utilizzare il server: bisogna configurare i due file di configurazione Postgresql.
Apriamo con un editor di testi, i due file di configurazione principali:
Codice: Seleziona tutto
/etc/postgresql/8.4/main/postgresql.conf
/etc/postgresql/8.4/main/pg_hba.conf
e il file pg_hba, come segue:
Ora il server è impostato a livello di sicurezza ZERO: chiunque della rete lan vi si può collegare, senza dare password.. approfondiremo più avanti magari questo aspetto.
Ora il server è pronto per l'uso. Apriamo PgAdmin e iniziamo a creare la struttura per i dati.
Suggerisco di fare in modo che sia identica a quella del vecchio database, in modo da evitare problemi poi nel trasferimento dati (attenzione quindi ai vincoli, relazioni, nomi delle colonne, etc..)