Backup di database
La seguente situazione è comune a molti utenti: per errore si è cancellato un file importante di cui purtroppo non esiste una copia di sicurezza. Il file è quindi definitamente perso. Che rabbia! La perdita non solo di singoli file, ma anche di un’enorme quantità di dati può essere disastrosa, soprattutto per le aziende. Nel settore aziendale, così come in quello privato, è quindi fondamentale fare il backup.
È importante mettere al sicuro i database
I sistemi di database hanno un ruolo fondamentale sia nel Web Hosting sia come componenti di software aziendali. Dalla disponibilità e dalla completezza dei dati memorizzati dipendono la funzionalità di un sito web e la capacità d’azione dell’azienda.
Progetti su piattaforme web con accesso ai database estraggono le informazioni da diversi linguaggi di scripting che sono necessari per la corretta visualizzazione del sito. Anche l’infrastruttura IT di un’azienda deduce di solito le sue informazioni dai database che ne sono alla base. Allo stesso tempo avviene lo scambio di dati nella direzione inversa mentre gli utenti memorizzano i dati nel database. Non è pertanto raro che i sistemi di database includano informazioni personali e finanziarie o dati sensibili dei clienti. Ugualmente pericolosa risulta un’interruzione del database o una vera e propria perdita di dati: il sito web non presenta più i contenuti in modo completo, le applicazioni non funzionano più e i dati dei clienti sono lacunosi o, nel peggiore dei casi, mancano del tutto. Questo causa del lavoro in più a chi ne è coinvolto e l’irritazione dei clienti, la cui fiducia andrebbe irrimediabilmente persa.
La causa di una perdita di dati non è, nel maggiore dei casi, un attacco proveniente dall’esterno ma un guasto tecnico dell’hardware o un errore da parte dell’utente. Anche il miglior software per la sicurezza non può proteggerci da questa eventualità. Affinché la perdita di dati non sia irreversibile, è necessario fare un backup.
Modi per mettere al sicuro il database
Per prevenire una perdita di dati si dovrebbero produrre copie di sicurezza del database su supporti di memorizzazione esterni. Con queste copie, che vengono anche chiamate backup, è possibile ripristinare lo stato dei database al momento della messa in sicurezza dei dati.
A questo proposito è opportuno distinguere tra backup online e offline: i backup online vengono generati senza arrestare il database. Durante il processo di messa in sicurezza il database registra le modifiche apportate in un ambiente separato e soltanto dopo averle salvate le integra nel file corrispondente. Se durante il backup si arresta il database, si parla di backup offline. Nonostante questo processo di backup abbia il vantaggio di essere relativamente facile da eseguire, ha anche lo svantaggio di rendere le applicazioni o il sito web non disponibile durante il backup. Per questo un backup offline andrebbe eseguito possibilmente di notte o in momenti di basso traffico di dati.
Oltre alla differenziazione in backup online e offline nel trasferimento dei dati su un supporto di memorizzazione si distinguono tre tipi di backup:
- Backup completo: come già suggerisce il nome, con questo tipo di backup si trasferiscono sempre tutti i dati. Questo comporta che nonostante siano presenti tutti i dati per ogni backup, lo spazio di memoria necessario per backup frequenti è tuttavia molto alto. Per il ripristino si ha bisogno soltanto del rispettivo backup completo.
- Backup differenziale: in caso di backup differenziale viene innanzitutto generato un backup completo. I seguenti backup si differenziano dal primo in quanto vengono salvati solo file che sono stati modificati o che sono stati aggiunti in seguito. Rispetto al backup completo si risparmia così spazio di memoria. Tuttavia i file modificati e i nuovi (fino al successivo backup completo) vengono copiati nuovamente ad ogni backup differenziale. Il recupero dei dati avviene soltanto con l’ultimo backup completo inclusivo del backup differenziale.
- Backup incrementale: in seguito a un backup completo durante un salvataggio di dati incrementale vengono copiati soltanto i file nuovi o che sono stati modificati dall’ultimo backup. A differenza di quello differenziale, un backup incrementale si riferisce sempre a quello precedente (sia il backup completo sia quello incrementale). Così ogni file viene salvato solo una volta e la memoria viene risparmiata. Per ripristinare i file desiderati sono necessarie tutte le funzioni di sicurezza dal backup completo fino allo stato desiderato.
Ci sono però alcune opzioni, sistemi di banche dati come database sql o Microsoft Access da mettere al sicuro. Quale procedimento sia il più adatto dipende dalle esigenze dell’utente o dell’azienda. Backup eseguiti per risparmiare spazio di memoria non dovrebbero mai essere una soluzione. Supporti di memorizzazione esterni come dischi rigidi dovrebbero inoltre essere conservati in un ambiente separato, al sicuro da furti o incendi. In più sarebbe buona prassi criptare i dati per evitare che possano essere utilizzati da terzi in caso di furto.
Come fare un backup
Se si decide di effettuare un backup, il primo passo consiste nel decidere quale metodo utilizzare. Ci sono diverse possibilità e strumenti per mettere al sicuro i database, come per esempio un database SQL. La seguente lista ne spiega alcuni:
- MySQLDump: chi dispone di un accesso shell, può lavorare con la funzione di backup integrata di MySQL e con il comando “mysqldump”. Tuttavia non tutti gli hosting consentono un accesso a questa funzione che fondamentalmente rende possibile l’esecuzione di un backup più veloce.
- phpMyAdmin: con questa piattaforma di amministrazione per i database SQL gli utenti possono esportare il database desiderato semplicemente nel formato scelto, per esempio SQL. Tuttavia è possibile che lo script PHP venga interrotto da database troppo grandi. Inoltre funziona solo la messa in rete dei backup con una dimensione di un massimo di 2 MB.
- BigDump: lo strumento BigDump è una utility perfetta per phpMyAdmin poiché è possibile trasferire qualsiasi tipo di backup. Non offre però una propria funzione di sicurezza.
- HeidiSQL: la soluzione di backup per sistemi Windows non si basa sul PHP e non ha pertanto problemi con backup di grandi dimensioni. A questo tool, che per il resto è molto simile al phpMyAdmin, manca tuttavia la possibilità di automazione del processo di messa in sicurezza dei dati.
Una protezione del database è sempre necessaria
I file memorizzati nei database sono spesso di grande importanza per il buon funzionamento di aziende o per la corretta visualizzazione di siti web. I protocolli web accedono alle informazioni contenute per visualizzare in modo appropriato i siti web ospitati e anche la funzionalità di applicazioni nella rete è spesso collegata direttamente a un database. I database costituiscono inoltre il luogo di memorizzazione di informazioni sensibili come indirizzi, informazioni contabili o numeri di telefono.
A causa del loro ruolo importante i sistemi per la gestione di database andrebbero necessariamente protetti con misure di sicurezza adeguate. Mentre da una parte i dati vanno protetti da attacchi esterni, dall’altra esiste la minaccia della loro perdita a causa di problemi interni come per esempio difetti hardware o errori utente. Backup regolari aiutano a prevenire la perdita di informazioni e garantiscono di conseguenza una protezione permanente dei dati.