Categories:
Desarrollo Web InDatcom Integracion Tecnologica
Teniendo nosotros el problema de porder restaurar solo una tabla de un respaldo de determinada base de datos, surgio la necesidad de crear un pequeño script simple pero util el cual permite crear respaldos por tabla especificandole la base de datos, esto permite que al necesitar restaurar una sola tabla o varias sea mas sencillo, por estas razones surgio el siguiente script que con gusto lo ponemos a disposicion de la comunidad
DESCARGA SCRIPT
primero debemos darle permisos de ejecucion
chomod +x respalda_tabla.sh
segundo ejecutamos el script pasandole 3 parametros usuario, password y base de datos
./respalda_tabla.sh usuario password base_datos
esto creara una carpeta con el nombre de la base de datos y fecha del sistema, dentro de la carpeta estran los sql de cada tabla dumpeada.
A continuacion el codigo y recuerden que si tienen alguna mejora hacernola saber
#!/bin/bash
#Written by Jorge Medrano
# Copyright (c) 2008 Jorge Medrano.
#
# Licensed under The MIT License
# Redistributions of files must retain the above copyright notice.
# license http://www.opensource.org/licenses/mit-license.php The MIT License
if [ $# -lt 3 ]; then
echo “Necesitas pasar dos parámetros: usuario, password y base de datos.”
exit 0
fi
echo “Inicia Respaldo”
RUTA=`pwd`
FECHA=`date +”%Y-%m-%d”`
RUTA=”$RUTA/$3-$FECHA”
if [ ! -d $RUTA ]; then
echo “Creando directorio”
mkdir $RUTA
fi
SQL=’Select table_name FROM information_schema.tables WHERE table_schema = “‘$3′” AND table_type = “BASE TABLE”;’
for i in `mysql -u $1 -p$2 -B –skip-column-names -e “$SQL”`;
do
mysqldump -u $1 -p$2 –opt $3 $i > $RUTA/$i.sql
done
echo “Termino respaldo”