Destacado
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Realizar respaldos a todas tus base de datos mysql bash sh
Respalda tus bases de datos con un script sh
Hola que tal a todos .
Bienvenidos a este nuevo post
Les debo contar que siempre nos topamos que se nos pierde por azares del destino la información de la base ,de alguna tabla y siempre dejamos el proceso de respaldo al final .
Es muy importante tener en cuenta los respaldos del servidor y más de nuestras bases de datos .
Para realizar estos respaldos si tenemos navicat o workbench es muy pesado hacerlos manualmente , ya que si tenemos 20 bases y tener que hacer el respaldo diario nos llevaría demasiado tiempo , ir uno por uno .En esta entrada les traigo un método que a pesar que la mayoría de los vps y hosting del mercado lo traen nada como un método que nos asegure que nuestras bases esten respaldadas.
Para comenzar haremos un archivo llamado respaldo.sh,
Los script bash son muy populares , ya que es un lenguaje que se compone de comandos escritos en la consola del servidor tambien conocida como el shell .
sql_host=xxxxxx
slq_usuario=xxxxxxx
sql_password=xxxxx
sql_database=xxxx
ruta=rutarespaldo
function Operation() {
if [ $1 -gt 0 ]; then
local result="0"
else
local result="1"
fi
echo $result
return 0
}
listdb=$(mysql -u ${usuario} -h ${host} -p${dbpass} -e "select SCHEMA_NAME from INFORMATION_SCHEMA.SCHEMATA where SCHEMA_NAME NOT IN('information_schema','mysql','performance_schema')" | awk '{print $1}')
for dbase in $listdb
do
if test $dbase != 'SCHEMA_NAME'
then
conteo=1
conexcion=1
for (( conteo=1; conteo<=3; conteo++ ))
do
sync && sudo sysctl -w vm.drop_caches=3
echo "Base de datos intento " $conteo ": " $dbase "<br/>";
mysqldump -u${usuario} -p${dbpass} --opt $dbase --routines > $ruta$dbase.sql
result=$(Operation $?) # We check the errorlevel of the last command
echo "<p>Backup of DB $dbase [$result]</p>" >> $log
if [ -s $ruta$dbase.sql ]
then
echo "Comprimiendo respaldo de Base de datos: " $dbase "<br/>"
cd $ruta
tar -zcvf respaldo_$dbase.tgz $dbase.sql
conteo=4
else
sync && sudo sysctl -w vm.drop_caches=3
fi
done
fi
done
Con este archivo tendremos cubierto los respaldos de nuestras bases de datos
Puedes colocar en un cron el cual , es una tarea programada que se hará todos los dias y tendras resguardados tus respaldos
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Entradas populares
Desarrollo de aplicaciones móviles con cordova js parte 2
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Integrar framework7 en cordova app móvil
- Obtener vínculo
- X
- Correo electrónico
- Otras apps
Comentarios
Publicar un comentario
Hola que tal,dime tu opinión