sabato 9 marzo 2013

Schedulare backup automatici MYSQL / Linux


MYSQL, LINUX, CRONTAB,7Z 



Ringrazio Davide Pettenò per il fondamentale contributo a questa guida







Oggi vedremo come schedulare dei backup automatici per mysql .
Questo automatismo si realizzerà senza neanche una linea di codice, contrariamente a quanto pensavo
io prima di iniziare :)



PASSI OPERATIVI:

1) creare uno script contente i comandi e le impostazioni per effettuare il backup
2) creare un'operazione pianificata in linux











PASSO NUMERO 1
di seguito lo script da salvare nel file esegui_backup.sh


#!/bin/sh


NOW=$(date +"%Y-%m-%d")
PERCORSO=/home/mysql_dump/$NOW
USER=root
PASSWORD=rootpassword
DUMPLOG=/home/mysql_dump/dump.log

echo "#" >> $DUMPLOG
echo "------------ INIZIO BACKUP $NOW ---------------" >> $DUMPLOG
echo "#" >> $DUMPLOG

mkdir $PERCORSO

echo "Creato cartella $NOW" >> $DUMPLOG


/***inizio***/
mysqldump --user=$USER --password=$PASSWORD NOMEDATABASE> $PERCORSO/NOMEFILE.sql
echo "Dump NOMEDATABASE ok" >> $DUMPLOG
7z a $PERCORSO/NOMEFILE.7z $PERCORSO/NOMEFILE.sql

/****fine****/
...
...
ripetere le linee tra inizio e fine per ogni database da 'backuppare'
...
...


echo " " >> $DUMPLOG
echo "Abbiamo quasi finito..." >> $DUMPLOG
rm $PERCORSO/*.sql
echo "Tutti gli sql non compressi sono stati rimossi" >> $DUMPLOG
echo "#" >> $DUMPLOG
echo "----------------------- FINE BACKUP $NOW -----------------------" >> $DUMPLOG




PASSO NUMERO 2
aggiungere la seguente riga al crontab

00 01 * * 6 sh /home/mysql_dump/esegui_backup.sh

questo schedulerà il backup ogni sabato alle ore 01:00




THE END!!!
mi raccomando cliccate sulla mia pubblicità  :) 

Nessun commento:

Posta un commento