Automatizzare il backup dei propri database MySQL su Windows e su Linux

SPONSORED LINKS

mysql
Il backup di un database MySQL è un’operazione molto importante che soprattutto per un sito di livello medio/alto andrebbe effettuata anche giornalmente. In questo articolo vedremo come questo tipo di operazione sia facilmente automatizzabile attraverso la schedulazione di un semplice script da linea di comando, sia che utilizziate un server Linux che Windows.

Procedura per il backup di un database MySQL su Linux

  1. Create un file “/root/backup/backup.sh” e assicuratevi di assegnargli i permessi di esecuzione con il comando:
    chmod +x backup.sh
  2. Aprite il file “backup.sh” con il vostro editor preferito ed utilizzate la seguente sintassi per ogni DB da includere nella procedura di backup automatizzato:
    mysqldump -u[USERNAME] -p[PASSWORD] –-opt [DATABASE NAME] > [BACKUPFILE]

    Ecco come si presenta il contenuto di un file backup.sh di esempio che effettua il backup di due database:

    mysqldump -uUser1 -pPassword1 --opt Database1 > /root/backup/Database1.sql
    mysqldump -uUser2 -pPassword2 --opt Database2 > /root/backup/Database2.sql
    dt=`date +%y%m%d`
    tar cvf /root/backup/sqlbackup-$dt.tar /root/backup/*
  3. Schedulate l’esecuzione del backup in modo che sia effettuato giornalmente (a mezzanotte) lanciando il comando:
    crontab -e

    ed inserendo la riga:

    00 00 * * * root sh /root/backup/backup.sh

Procedura per il backup di un database MySQL su Windows

  1. Create un file “c:\backup\backup.bat“, apritelo con il vostro editor preferito e utilizzate la seguente sintassi per ogni DB da includere nella procedura di backup automatizzato:
    mysqldump -u[USERNAME] -p[PASSWORD] –-opt [DATABASE NAME] > [BACKUPFILE]

    Ecco come si presenta il contenuto di un file backup.bat di esempio che effettua il backup di due database:

    set dt=%date:~6,4%-%date:~3,2%-%date:~0,2%
    mysqldump -uUser1 -pPassword1 --opt Database1 > c:\backup\Database1-%dt%.sql
    mysqldump -uUser2 -pPassword2 --opt Database2 > c:\backup\Database2-%dt%.sql

    [Attenzione: il comando prevede la generazione di un file di backup con la data odierna aggiunta in maniera automatica nel formato “YYYY-MM-DD” ed è relativo ad un sistema operativo configurato per la lingua italiana.]

  2. Schedulate l’esecuzione del backup in modo che sia effettuato giornalmente (a mezzanotte) lanciando il comando:
    AT 00:00 /EVERY:m,t,w,th,f,s,su c:\backup\backup.bat

A questo punto non dovete far altro che storicizzare (magari su nastro o CD) i files di backup generati.
L’unica differenza reale tra le due procedure è il fatto che su nel primo caso viene creato anche un archivio compresso attraverso il comando tar normalmente disponibile su Linux. Per ottenere un effetto analogo su Windows dovete installare un’utility di compressione come WinZip o Compact (dal resource kit).

SPONSORED LINKS
Ti è piaciuto l'articolo?
Iscriviti alla newsletter per ricevere in tempo reale tutte le notizie e gli aggiornamenti!

Articoli correlati a "Automatizzare il backup dei propri database MySQL su Windows e su Linux"


Lascia un commento