jueves, 15 de enero de 2009

Realizar un backup de nuestra base de datos MYSQL

Esto es simple, crearemos un script para backupear nuestra base de datos.
Primero creamos un directorio donde vamos a poner nuestro backup

# mkdir /home/mysqlbkp

Ahora creamos nuestro script bkp_mysql.sh con nuestro editor favorito con lo siguiente:
#!/bin/bash

### BACKUP para mysql ###

mysqldump -uroot -ppwd --opt prueba > /home/mysql_bkp/dbbkp.sql
cd /home/mysql_bkp
tar -czvf mysql_bkp_$(date +%d%m%y).tgz *.sql
find -name '*.tgz' -type f -mtime +2 -exec rm -f {} \;

Analizamos
  • -u es para indicar el usuario en este caso es root pero puede ser cualquier otro usuario que tenga privilegios sobre la base de datos
  • -p es para indicarle el password aquí tienes que colocar el password del usuario que estás utilizando para conectarte en la base de datos.
  • –opt aquí indicamos cual es base de datos que queremos que copie en este caso prueba
  • el operador > redirecciona la salida del comando hacia un archivo llamado dbbkp.sql en una carpeta llamada respaldosql.

Listo, ahora le damos permisos de ejecucion:
# chmod +x bkp_mysql.sh

Listo ahora lo podemos ejecutar, y ya esta. Les dejo un link para que vean como se agregar este tipo de tareas a CRON.

http://linuxsix.blogspot.com/2008/12/crontab-tareas-programadas.html


Y para recuperar la base de datos, como se hace? bueno asi

# mysql prueba < dbbkp.sql -u root -p

prueba es el nombre de la base de datos
dbbkp.sql es el backup

No hay comentarios: