Il backup di un database MySQL è un’operazione abbastanza semplice e la frequenza di esecuzione di quest’attività potrebbe variare a secondo dell’importanza dei dati in esso contenuti.
Il comando più utilizzato, per creare copie di sicurezza dei dati allocati in un database è sicuramente mysqldump, si può eseguire velocemente utilizzando la riga di comando ed è molto ricco di opzioni (per maggiori dettagli mysqldump –help).
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] –databases [OPTIONS] DB1 [DB2 DB3…]
OR mysqldump [OPTIONS] –all-databases [OPTIONS]
mysqldump -u[NOMEUTENTE] -p[PASSWORD] –-opt [NOME DB] > [NOME FILE BACKUP]
Personalmente, su piattaforma Windows, ho automatizzato il processo aiutandomi con file batch (db_bck_mysql.bat) e creando un attività pianificata.
Nella prima parte viene eseguito il dump del db, successivamente procedo alla compressione del file .sql generato utilizzando 7-Zip (programma di compressione di file open source), al termine della compressione viene cancellato il file .sql diventato ormai inutile.
SET destinazione=”C:backup”
SET data=%date:~6,4%-%date:~3,2%-%date:~0,2%
REM dump MySQL
mysqldump -uuser -ppassword –opt ilmiodbmysql > %destinazione%db_bck-%data%.sql
REM Inizio compressione
7z a -tzip db_bck-%data%.zip db_bck-%data%.sql
REM Cancello file .sql
del db_bck-%data%.sql