Passare a IGSuite 3.2 (Bozza) (Documento scaduto)

Aggiornare la struttura del Database


Questo documento è incompleto!!!

Con Mysql

  1. Effettuare un backup del database al fine di ripristinare in caso di insuccesso la situazione originaria. Effettura sia il backup delle directory dei CGI che quelle contenenti i documenti ed infine il database "isogest" presente in mysql.

  1. Eliminare dal database "isogest" tutte le tabelle non utilizzate. Per vedere se una tabella è utilizzata o no basta semplicemente effettuare una semplice select e vedere se produce risultati.
SELECT COUNT(*) FROM nometabella;
DROP TABLE nometabella;

  1. Eliminare dal database "isogest" tutte le tabelle non più implementate nella nuova struttura di IGSuite 3.2. Le tabelle non più supportate sono: centralina; stato; gasolio.
DROP TABLE nometabella;

  1. Rinominare dal database "isogest" tutte le tabelle rimaste e aggiungere campi fino ad ottenere un a struttura uguale a quella di IGSuite 3.2 (vedi file file://Home/guest/Documentazione/IGSuite_Database_Structure.pdf ). I campi vuoti servono esclusivamente per omogeneizzare l'esportazione e l'importazione del database. Questa fase è molto delicata prestare quindi molta attenzione. I comandi sql per rinominare una tabella o per aggiungere dei campi sono:
ALTER TABLE tablename RENAME TO newtabelname;
ALTER TABLE tablename ADD COLUMN empty1 varchar(1);
ALTER TABLE tablename ADD COLUMN empty2 varchar(1);

  1. Effettura il dump del database "isogest" attraverso il seguente comando:
mysqldump -n -t -u [utente] -p isogest > db.sql

  1. Ricostruire il nuovo database con l'ausilio dello script mkstruct.pl presente all'interno del nuovo pacchetto di IGSuite 3.2:
perl mkstruct.pl igsuite

  1. Copiare i dati all'interno del nuovo database "igsuite" creato da mkstruct.pl, con il seguente comando:
mysql -p -u [utente] igsuite < db.sql


Con Postgres

  1. Effettuare un backup del database al fine di ripristinare in caso di insuccesso la situazione originaria. Effettura sia il backup delle directory dei CGI che quelle contenenti i documenti ed infine il database "isogest" presente in postgres.

  1. Eliminare dal database "isogest" tutte le tabelle non utilizzate. Per vedere se una tabella è utilizzata o no basta semplicemente effettuare una semplice select e vedere se produce risultati.
SELECT COUNT(*) FROM nometabella;
DROP TABLE nometabella;

  1. Eliminare dal database "isogest" tutte le tabelle non più implementate nella nuova struttura di IGSuite 3.2. Le tabelle non più supportate sono: centralina; stato; gasolio.
DROP TABLE nometabella;

  1. Rinominare dal database "isogest" tutte le tabelle rimaste e aggiungere campi fino ad ottenere un a struttura uguale a quella di IGSuite 3.2 (vedi file file://Home/guest/Documentazione/IGSuite_Database_Structure.pdf ). I campi vuoti servono esclusivamente per omogeneizzare l'esportazione e l'importazione del database. Questa fase è molto delicata prestare quindi molta attenzione. I comandi sql per rinominare una tabella o per aggiungere dei campi sono:
ALTER TABLE tablename RENAME TO newtabelname;
ALTER TABLE tablename ADD COLUMN empty1 varchar(1);
ALTER TABLE tablename ADD COLUMN empty2 varchar(1);

  1. Effettura il dump del database "isogest" attraverso il seguente comando:
pg_dump -a -f db.sql isogest

  1. Ricostruire il nuovo database con l'ausilio dello script mkstruct.pl presente all'interno del nuovo pacchetto di IGSuite 3.2:
perl mkstruct.pl igsuite

  1. Copiare i dati all'interno del nuovo database "igsuite" creato da mkstruct.pl, con il seguente comando:
psql -d igsuite -f db.sql