[Script] Realizando salvas a bases de datos en MySQL

Conexión entre PCHola lector y/o seguidor. Si eres de los pocos que se preocupan y ocupan en hacerle salvas diarias a las bases de datos, en algún momento has necesitado realizar este proceder a 2 o más bases de datos que se encuentran en el mismo servidor. En esta entrada compartiré un script que he programado en BASH probado en un servidor Debian 7 Wheezy. Como ya es costumbre en mi aclarar que si usted desea replicar este escenario en distribuciones similares o derivadas, primero léase bien un tutorial de BASH, luego uno de uso de comandos y utilidades de MySQL y por último piense, el Ctrl + C hace un daño terrible.

#!/bin/bash

# directorio de almacenamiento de salvas de SQL
BASEDIR=/ruta/carpeta/salvas
SQLDIR=${BASEDIR}/$(date +%Y)/$(date +%m).$(date +%B)/$(date +%d)

# La ruta quedará de la siguiente forma:
# /ruta/carpeta/salvas/2017/01.Enero/01
# /ruta/carpeta/salvas/2017/03.Marzo/29

# comprobar que existe el directorio de almacenamiento de logs
# si no existe, crearlo.
if [ ! -d ${SQLDIR} ]; then
    mkdir -p ${SQLDIR}
fi

# datos del usuario de mysql
USERNAME=[USUARIO MYSQL]
PASSNAME=[SUPER CONTRASEÑA INVIOLABLE]

# Lista de bases de datos
BDARRAY=("plandetrabajo")
BDARRAY[1]=paquetesemanal
BDARRAY[2]=chismosored
BDARRAY[3]=intranet

printf "\nSalvando bases de datos:"

# Ir salvando cada BD en un archivo independiente
for ITEM in ${BDARRAY[*]}
do
       # Siquieres que te muestre en la consola al ejecutarse el script cuales BD ya ha salvado
       # descomentar la linea del printf a continuacion
       ## printf "%s\n" $ITEM

       # Aquí se realiza la magia
       mysqldump --user=${USERNAME} --password=${PASSNAME} ${ITEM} > ${SQLDIR}/${ITEM}.sql
done

exit 0

Como vieron no es nada del otro mundo y creo que se me pongo a investigar hasta “un niño de teta” en esto del linux lo haría mejor que yo, PEEEROOO como es con esfuerzo y trabajo propio, pues lo cuelgo en este Blog que ya no se de que rayos va camino a ser.

4 thoughts on “[Script] Realizando salvas a bases de datos en MySQL

  1. Te daré una solucion…

    Llegas a cualquier dirección provincial de JCCE con la combinación de laptop+HDD y verás que tienen acceso a una red WIFI (abierta para todo el dominio jovenclub pero con un portal cautivo para ue nadie se crea mas listo) configuras un script para descargar repositorios desde la zona de descargas de jovenclub y listo… en par de horas tienes TODO EL REPO de la distro que quieras.

    • Entonces ya envío al integrante del escuadrón metelapata para que los baje. Gracias pelú.

  2. Existe vida mas allá de Wheezy. Si no quieres abandonar Debian deberias ir pensando en una migracion a Jessie (que no esta nada mal la vaquerita). Piensalo… mejor soporte para tecnologías actuales y la teoria dicta que deberían haber limado bugs de una version a otra…. es solo lo que pienso pero bueno…. es tu Blog, escribes lo que te da la gana y es tu server que lo administras como te de la gana 😉

    • El problema de MIGRAR a Jessie es puro tema de repositorio, ya sabes no es lo mismo de un repo local a uno por la red a 64 KB/s. En diciembre tenía de la idea de ir a la Habana a copiar el repo pero por cosas de dinero y presupuesto la cosa se chivó. Ya se que existe la opción de ir a Joven Club a pedirles de “favor” que me los copien pero ya lo dice mi palabra “FAVOR”, porque de obligación es un chiste mal contado. Normalmente en muchos sitios de internet donde publican cositas sencillas tratan de probar las cosas en versiones anteriores y luego explicar los cambios que se deben realiar en las más actualizadas. Sobre lo que escribo creeme que ya casi estoy que escribo más las lokuras que hago aquí que lo que me da la gana, porque bien sabes que: DESDE ARRIBA LUCAS TE MIRA

      Gracias por llegarte y comentar.
      Salu2

Comments are closed.