Il Backup dei Dati Aziendali

Ogni database può essere rovinato da moltissime cause, dal crash del sistema ad errori umani, seguendo la legge di Murphy che afferma che se una cosa può andare male, allora andrà anche peggio. Da questo ragionamento si può evincere che sicuramente almeno una volta i nostri dati subiranno un danno oppure che i dati dei nostri clienti andranno persi. Da questa premessa si evince facilmente come sia essenziale una buona strategia di backup dei nostri dati aziendali.
La frequenza dei backup deve essere direttamente proporzionale alla frequenza di modifica dei dati, si può andare da una o due volte al giorno fino ad una volta a settimana, in casi di grandi database con realtà aziendali molto complesse si può aver bisogno anche di 10-12 salvataggi al giorno o anche più. In questi casi si ricorre al backup dei soli dati modificati, in quanto fare il salvataggio dell’intero database risulterebbe troppo dispendioso. Per aumentare la sicurezza dell’operazione è obbligatorio trasferire la copia di backup su un supporto esterno o comunque differente da quello su cui si trovano i dati.
Un backup è una copia dell’intero database o di una parte di esso effettuata in un determinato istante di tempo. Un restore è un’operazione di ripristino di una copia di backup del database, generalmente effettuata dopo una perdita di dati. Un file di log è una registrazione delle operazioni effettuate sul database, di solito in esso vengono inserite le informazioni di una transazione in modo da poterla poi replicare oppure annullare ( rollback ). Un recovery è un’operazione automatica di recupero dati a seguito di un problema verificato all’interno del database, si tratta non di recuperare i dati da un backup, bensì di annullare e riapplicare una serie di transazioni che sono state salvate in un file di log. Un checkpoint è la fotografia di un database all’interno del file di log, in modo tale da recuperare le operazioni solo dopo un determinato punto, consente di velocizzare la recovery dei dati.
Il principale problema legato ad un’operazione di restore è sapere se sono stati ripristinati tutti i dati aziendali o solo alcuni, la principale tecnica che consente di recuperare l’intero database si chiama mirroring. Questa tecnica consiste nel mantenere due o più copie dello stesso database su due o più supporti diversi, gli aspetti positivi sono che i dati difficilmente verranno perduti e soprattutto si impiega pochissimo tempo per sostituire il database, gli aspetti negativi sono ascrivibili soprattutto all’elevato spazio di backup a cui si deve fare carico. Una tecnica meno costosa in termine di risorse utilizza l’ultimo file di log salvato e riapplica le modifiche all’ultima copia di backup salvata, in questo caso non si ha la certezza del ripristino completo dei dati ed inoltre occorre molto più tempo.
Nel caso di database che si basano su file come quelli di Access, il backup può essere effettuato semplicemente copiando il file ( .mdb ) su supporto esterno, come nel caso dei miei software gestionali, ma nel caso di DBMS basati sull’architettura client/server il processo è molto più complicato. Nel caso di MS SQL Server ci sono degli strumenti che effettuano il backup ad un tempo programmato, semplicemente impostandoli tramite dei comodi wizard, mentre in altri server dati occorre utilizzare la riga di comando.

Informazioni su Giampaolo Rossi

Sviluppatore di software gestionale da oltre 28 anni.
Questa voce è stata pubblicata in Database, Gestionale e contrassegnata con . Contrassegna il permalink.