domingo, 27 de septiembre de 2015

3 - RESPALDOS AUTOMATICOS CON CRON

1.1.       Creación de Script de Respaldo

-          Lo primero que hay que hacer es tener un directorio específico para crear los respaldos. Ejemplo: /mi_directorio/dumps/
-          Crear el archivo .sh que ejecutará los respaldos
vi /mi_directorio/dumps/ejecuta_respaldo.sh
-          Agregar el escript:
#!/bin/sh
# Respaldos de MySQL

# nombre del respaldo
ARCHIVO="resp_prueba_`date +%m%d%H%M`"

# carpeta donde se hace los dumps
cd /home/mysql/dumps/

# dumps de las bases de datos que se requieren
mysqldump -u miuser -pmipass --opt miBD01 > resp_miDB01.sql
mysqldump -u miuser -pmipass --opt miDB02 > resp_miDB02.sql

# se comprime todos los dumps en un solo archivo
tar -zcvf $ARCHIVO.tgz *.sql

# (opcionales) mover el archivo a un directorio destino y limpiar
#cp -rv $ARCHIVO.tgz /directorio_destino/$ARCHIVO.tgz
#rm *.tgz
-          Una vez creado el script a nuestra conveniencia, se debe cambiar el archivo en modo ejecutable:
sudo chmod 700 /mi_directorio/dumps/ejecuta_respaldo.sh
-          Para comprobar si funciona solo ejecútalo: ./ejecuta_respaldo.sh

1.2.       Añadirlo en el cron para que se ejecute automáticamente (crontab)

Se debe configurar en el crontab con la instrucción para que se realice el respaldo a la hora que se requiera. Para ello con usuario su, dirígete al directorio /etc/ y escribe crontab –e para entrar a configurarlo directamente.
Agrega a las líneas del crontab la siguiente instrucción:
0 4 * * * /mi_directorio/dumps/ejecuta_respaldo.sh
En la instrucción le estoy indicando al cron que a las 4 am, en el minuto 0 se ejecute el respaldo que se ha creado. Para aprender a configurarlo se muestra el siguiente cuadro:
--- en el cron
.-----------------------• Minuto (0 - 59)
|  .--------------------• Hora (0 - 23)
|  |  .-----------------• Día del mes (1 - 31)
|  |  |  .--------------• Mes (1 - 12)
|  |  |  |  .-----------• Día de la semana (0 - 6) (domingo=0 o 7), y
|  |  |  |  |             también acepta como valores:
|  |  |  |  |             mon, tue, wed, thu, fri, sat y sun
|  |  |  |  |  .--------• Usuario preferiblemente root
|  |  |  |  |  |      .-• Programa a ejecutar
↓  ↓  ↓  ↓  ↓  ↓      ↓
1 14  *  *  *  fulano /home/fulano/bin/tarea.sh > /dev/null 2>&1
Si el servicio cron no funciona únicamente seguir los pasos del punto siguiente.

1.3.       Habilitar cron (en caso de no estar instalado)

Muchas veces el servicio de cron no está configurado en el equipo para ello solo se debe seguir unos simples pasos en openSuse

-          Para Instalarlo: yast -i cronie

-          Para iniciar el servicio por primera vez cuando recién se ha instalado cronie: rccron start

-          Abrir el archivo vi /etc/crontab y agregarle al inicio lo siguiente:
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
#MAILTO=alguien@gmail.com (opcional)



No hay comentarios:

Publicar un comentario