lunes, 6 de diciembre de 2010

Tarea programada y Auto Respaldo de Base de datos

Esto es algo realmente muy sencillo usando inclusive un programa que ya viene con la distro de Linux que uses, vamos a dar el modo de uso y unos ejemplos del Cron

Antes que nada hay que tener en cuenta que para tener permisos o negaciones del uso de este comando existen archivo en /etc/cron.d/ como cron.deny y cron.allow pero en este momento no entremos a esos detalles porque no van tanto al caso, aunq si desean algo mas amplio en ese tema pueden dejarlo en un comentario.

Cada usuario tiene una tabla de tareas programadas personales, de ese modo cada usuario tiene control de sus actividades y para iniciar la creación/edición de una tabla para el usuario activo se escribe:

crontab -e

En ese momento se iniciara una pantalla con un ejemplo simple del uso del crontab pero que significa cada columna en esa linea?

1. Minutos: (0-59)
2. Horas: (0-23)
3. Días: (1-31)
4. Mes: (1-12)
5. Día de la semana: (0-6), siendo 1=Lunes, 2=Martes,… 6=sábado y 0=Domingo
6. Linea de comando a ejecutarse

Un ejemplo seria:

30 10 * * 1 /usr/bin/who >> /home/quien.tex

Ejecuta la orden who todos los lunes a las 10:30 y guarda la salida en el archivo quien.tex

Luego que guardas el archivo este comenzara a funcionar automáticamente en el Cron.

Una tarea programada es asi de sencilla aunque se podría ampliar un poco mas el tema con respecto a las opciones que se pueden usar, para algo mas amplio puede preguntar o visitar los links de las fuentes que están mas abajo.

Ahora entramos al área de la Base de datos, en este caso trabajo con una base mysql, como la mayor parte de mi trabajo es programar en Php y Mysql aca les dejo el vinculo a un script de Respaldos muy bueno y ordenado que encontré:

http://www.dagondesign.com/articles/automatic-mysql-backup-script/

En el cual solo tenemos que editar nuestras opciones en el archivo de configuración como es el Host, User y Contraseña de nuestra base de datos y la ubicación de donde se guardaran los respaldos.

Pero… Como usamos esto con el Cron? muy sencillo:

01 01 * * * php /var/www/backuper/backup_dbs.php

Se ejecuta todos los dias a la 01:01 el Script de Respaldos.

Asi de rapido podemos ejecutar un respaldo programado de nuestra base de datos. Suerte.

Fuentes:


http://es.wikipedia.org/wiki/Cron_(Unix)

http://www.unixgeeks.org/security/newbie/unix/cron-1.html

No hay comentarios: