=== 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.
2. 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;
3. 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;
4. 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);
5. Effettura il dump del database "isogest" attraverso il seguente comando:
mysqldump -n -t -u [utente] -p isogest > db.sql
6. 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
7. 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.
2. 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;
3. 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;
4. 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);
5. Effettura il dump del database "isogest" attraverso il seguente comando:
pg_dump -a -f db.sql isogest
6. 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
7. Copiare i dati all'interno del nuovo database "igsuite" creato da mkstruct.pl, con il seguente comando:
psql -d igsuite -f db.sql