Como hacer backups (respaldos) automáticos de nuestra base de datos MySQL usando una sola linea en Cron Jobs

Todo webmaster sabe la importancia de realizar frecuentemente copias de respaldo o backups de nuestras bases de datos, ya sea que tengamos un blog o un portal que utilice una base de datos MySQL, sería un gran descuido de parte nuestra dejar pasar más de una semana sin hacer una copia de respaldo que nos garantice que frente a algun problema inesperado en el servidor o algún indeseado ataque informático,  podamos restaurar la base de datos y no perder nuestra trabajo de meses o hasta años, hay algunos programas y scripts para realizar respaldos de forma automática pero yo, como webmaster de la vieja escuela hago mis backups automáticos usando Cron Jobs desde el panel de control de mi cuenta, con una sola linea de comandos, Cron Jobs es una utilidad que permite realizar tareas programadas y pautadas cada cierto tiempo o en días y horas específicadas por nosotros mismos, en este caso lo que vamos a programar es que nos haga copias de respaldo ciertos días de la semana por ejemplo, pero obviamente ustedes pueden programar que sea todos los días, una vez por semana, o al mes, según sus necesidades y la frecuencia con que actualizan sus webs con nuevo contenido almacenado en la base de datos, obviamente si tienen un blog o portal que actualizan a diario con mucho contenido nuevo vale la pena hacer backups diarios.

Lo primero que tienen que hacer es crear una carpeta en el directorio principal o root de su cuenta, allí es donde Cron Jobs almacenará los respaldo automáticos de la base de datos, crearemos por ejemplo una carpeta llamada «respaldos» (sin las comillas) y le daremos privilegios de acceso 777

Luego en nuestro Panel de Control de la cuenta, entramos a la sección Cron Jobs allí en el modo «standard» en la ventana de comando entramos la siguiente linea:

/usr/bin/mysqldump –opt -u USUARIO -pPASSWORD BASEDEDATOS | gzip > /home/MICUENTA/public_html/respaldos/dbmiweb_`date +\%d\%m\%y`.sql.gz

Donde :

USUARIO: Es el nombre de usuario de nuestra base de datos

PASSWORD: Es el password para nuestra base de datos, noten que no hay un espacio entre el parámetro -p y el password, va todo junto.

BASEDEDATOS: Es el nombre de nuestra base de datos

/home/MICUENTA/public_html/respaldos/: Es la ruta absoluta en nuestro servidor hasta la carpeta «respaldos», tienen que colocar su propia ruta absoluta, la que he colocado es solo un ejemplo.

La copia de respaldo se hará automáticamente en formato comprimido GZIP e incluíra en el nombre datos de la fecha del respaldo. ustedes tienen que elegir luego en que horas, días o fechas desean los respaldos.

En modo Avanzado (Advanced o Unix Style) para quienes lo prefieren, el comando sería el siguiente para que el respaldo se haga todos los domingos a las 4 de la mañana:

1 4 * * 0 /usr/bin/mysqldump –opt -u USUARIO -pPASSWORD BASEDEDATOS | gzip > /home/MICUENTA/public_html/respaldos/dbmiweb_`date +\%d\%m\%y`.sql.gz