IGWiki Main Page


IGSuite Faq

Come posso realizzare velocemente un BackUp dei dati ? (Document expired)

Search pages


SourceForge Logo

IGSuiteCome posso realizzare velocemente un BackUp dei dati ? (Document expired)
  Edit WikiPage historyPropertyGet PdfShows a printable version of this pageCan I help you ?

Come modo posso realizzare velocemente un BackUp dei dati ?


In diverse occasioni potrebbe essere necessario copiare o spostare i dati gestiti da IGSuite. Sia per un backup o magari per eseguire l'aggiornamento di un sistema operativo del proprio server occorre agire su due fronti: la copia dei dati sul server RDBMS che sul filesystem. Rispettivamente nel primo caso bisognerà conoscere il nome del DB di igsuite (in genere "igsuite") e nel secondo caso le directory configurate in fase di installazione della suite. In entrambe i casi tali informazioni vanno ricercate all'interno del file di configurazione di IGSuite "igsuite.conf"

Per quanto riguarda il nome del database da "salvare" si deve ricercare all'interno del file di configurazione la variabil $db_name. Per quanto riguarda invece i dati contenuti nel filesystem ecco le informazioni che andremo a salvare:

  • Le cartelle di sistema degli utenti con vari dati (Messaggi Email in formato originale) e impostazioni personali.
  • I file delle foto degli utenti e delle attrezzature;
  • I template (versione file) di IGWiki
  • I Repository dei file (quelli che si collegano ai contatti agli eventi etc).
  • L'intero albero dei file dei documenti protocollati (Lettere, Offerte, Fax etc)
  • L'interno albero dei file di IGFile


Dall'elenco sembrerebbe che il lavoro di backup sia molto esteso ma in realtà tutte le voci sopra riportate sono raccolte in sole due directory: Quella specificata in $htdocs_dir all'interno del file di configurazione di IGSuite (igsuite.conf); e quella in $cgi_dir (la directory dove sono installati gli script cgi di IGSuite).

Volendo riassumente, per un backup basta quindi:

  • Effettuare un backup dei dati del database (vedi sezioni sotto)
  • Copiare il contenuto delle directory $htdocs_dir e $cgi_dir


E' ovvio che un backup dei dati oltre a mettere al sicuro i dati e i file gestiti dalla Suite offre anche la possibilità di poterli "spostare" e ripristinare in ambienti diversi o su server diversi. Ad esempio è possibile spostare dei dati da una versione per Windows di IGSuite ad una versione per Linux (chiaramente di una release almeno superiore se non uguale).

N.B. E' consigliabile in seguito ad un ripristino dei dati lanciare sempre lo script "mkstruct.pl" presente all'interno della directory dei cgi.


Backup dei dati nel DB con MySQL

MySQL mette a disposizione due programmi mysqlhotcopy e mysqldump.

mysqlhotcopy è uno script, scritto in linguaggio Perl, che, basandosi sul comando cp, effettua la copia "grezza" di un database, semplicemente copiando il contenuto della relativa directory dati, in un altro luogo sullo stesso sistema. La sua caratteristica principale è la velocità. Esempio:

iguser@igserver# mysqlhotcopy igsuite /igsuitedb-bk/


In questo esempio il contenuto del database 'igsuite' viene copiato nella directory /igsuitedb-bk

mysqldump è un'utility che presenta alcuni vantaggi rispetto a mysqlhotcopy, e quindi è maggiormente utilizzata. Essa genera un file ASCII contentente istruzioni SQL (CREATE TABLE, CREATE DATABASE ecc.) che permettono di ricreare completamente un database. Questo metodo permette di utilizzare lo script su qualsiasi piattaforma, ottenendo quindi una soluzione portabile. La seconda importante caratteristica è la flessibilità, modificando lo script prodotto, è possibile il ripristino anche di una sola tabella. Infine mysqldump permette di effetture il dump di un database da remoto. Esempio:

guser@igserver# mysqldump igsuite> igsuite_dump_db.sql -u root -p
Enter password: nostrapassword


Viene eseguito il dump del database igsuite generando le relative instruzioni nel file igsuite_dump_db.sql. E' necessario comunicare a mysqldump che si utilizzerà l'utente amministratore -u root con la relativa password -p

Backup dei dati nel DB con PostgresSQL

pg_dump (o pgdump) è una utility molto simile a mysqldump, crea un file di script contenente le istruzioni per il restore del database. Esempio:

iguser@igserver# pg_dump igsuite > igsuite.pgdump

Viene eseguito il dump del database 'igsuite' generando le relative instruzioni nel file igsuite.pgdump.

Comments

Insert from MizaR 26.10.2006 13:14:29
Molto spesso però i provider non fanno eseguire questo tipo di comandi... almeno io mi sono trovato in questa situazione. con un po di siti da gestire e i relativi database abbastanza grossi. Ho usato la classica soluzione              
dello script php nel webserver, (che crea il dump del database).. e un programma in java che raccoglie i vari dump dagli script php messi uno per ogni server. Ho pubblicato qua l'articolo sul <a href=http://pianeta.altervista.org/?p=11>backup Mysql</a>

Name: faq3 - Revision: 3 - Author: Guerrasio Giuseppe (20.01.2005) - Last Editor: Ortolani Luca (02.11.2010) - Category: Faq - Due Date: 31.12.2011 - View privileges: All the world - Edit privileges: Only to the owner - Approved by: Ortolani Luca - Copyright © Ortolani Luca All right reserved