Pues ya estoy aquí de nuevo para escribir un shell script que realiza una copia de seguridad de nuestras Bases de Datos y mediante ncftpput las enviamos a nuestro servidor FTP.
# DATOS
SERVIDOR=GENTOO-VPS
FECHA=$(date +"%m-%d-%Y") # mm-dd-yyyy
EMAIL=su@email
ASUNTO="Backup SQL"
TMP=/home/backup/tmp
# DATOS BD
BD_USUARIO=root
BD_CLAVE=*******
# DATOS FTP
NCFTP="/usr/bin/ncftpput"
FTP=ftp.dominio.com
FTP_USUARIO=user
FTP_CLAVE=******
FTP_DESTINO="./servidores/$SERVIDOR/MySQL/"
for BD in `mysql -u$BD_USUARIO -p$BD_CLAVE -e "show databases" -B -N`
do
mysqldump -u$BD_USUARIO -p$BD_CLAVE $BD > $TMP/$BD-$FECHA.sql
$NCFTP -m -u $FTP_USUARIO -p $FTP_CLAVE $FTP $FTP_DESTINO/$BD/ $TMP/$BD-$FECHA.sql
rm -f $TMP/$BD-$FECHA.sql
done
mail -s "$ASUNTO - $FECHA - $SERVIDOR" $EMAIL
Para optimizar la tarea podemos incluirla en nuestro crontab e incluimos la siguiente linea con la programación de la tarea y donde está ubicado nuestro script. Se ejecutará a las 2 de la madrugada todos los días:
crontab -e 0 2 * * * /home/backup/backup-bd-diaria.sh