Attenzione! Questo contenuto è vecchioQuesto articolo risale al 2009, quindi i contenuti e le operazioni qui consigliate potrebbero essere diventate obsolete nel corso del tempo.

Chi amministra un server web sa quanto è importante il discorso del salvataggio di quanto è stato creato, sia a livello di database sia a livello di file, di righe di codice scritte.

Per fortuna alcuni svegli programmatori di ngcoders.com hanno pensato a questo problema e hanno creato un piccolissimo script in grado di creare una copia di backup del filesystem e del database in una sola passata.
Sinceramente non ho trovato il nome di questo script, penso che lo chiamerò con un nome eloquente come 1-click filesystem and database backup tool

Il file .zip scaricato si compone di 3 file principali, scritti in php:

  • backup.php : lo script principale da richiamare per avviare il processo di backup
  • functions.php : le classi e le funzioni principali che creano fisicamente i backup
  • config.php : il file di configurazione semplice nel quale specificare le opzioni del backup che vogliamo ottenere

Il file di configurazione è assai semplice, come ho sottolineato prima, ecco una anteprima e qualche istruzione per completarlo:
<?php
// Quali directory/file da backuppare ( i nomi delle directory con lo slash iniziale )
// e' un array, quindi ricordatevi la virgola dopo ogni elemento tra le virgolette
$configBackup = array('../');
// Quali directory da saltare durante il processo di backup
$configSkip   = array('backup/');  
// Dove piazzare i file di backup a completamento dei processi? (ricordarsi lo slash finale)
$configBackupDir = 'backup/';
// I database dei quali effettuare il backup. Possono essere multipli. (Se l'array delle tabelle contiene delle entry, verranno salvate SOLO quelle tabelle!)
$configBackupDB[] = array(
'server' => 'localhost',
'username' => 'root',
'password' => '',
'database' => 'databasename',
'tables' => array('tabella1', 'tabella2', 'tabella3')
);
// Se vogliamo che il backup ci venga spedito via posta elettronica, specifichiamo un indirizzo valido
$configEmail = 'test@test.example.com';
?>

Niente di più semplice e niente di più funzionale: uno di quei tool che un Web Developer dovrebbe sempre tenere sotto mano, una sorta di chiave inglese da 10 del programmatore php/mysql

Ecco il link per scaricare il programma: script per la creazione di backup di file e database
Buon lavoro!