Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- # Nombre script.
- NAME="Respaldo MySQL"
- #Descripción: Script para hacer un respaldo de todas las bases de datos de un servidor
- # Variable para Fecha.
- : ${DATE:=$(date +'%Y-%m-%d')}
- # Variable para Hora.
- : ${TIME:=$(date +'%R')}
- # Directorio de trabajo.
- : ${WORK_DIR:=/tmp/respaldo_db}
- # Dirección del servidor MySQL
- : ${IP_SERVIDOR_MYSQL:="La ip de tu server"}
- # usuario DB
- : ${USUARIO:="usuario db"}
- # La contraseña de root de nuestro servidor MySQL.
- : ${DB_PASS:="contraseña de mysql"}
- #Antes de respaldar optimizamos y reparamos las bases de datos.
- clear
- echo "Iniciando optimización de las bases de datos."
- echo "============================================="
- mysqlcheck -c -A --auto-repair -o -h $IP_SERVIDOR_MYSQL -u $USUARIO -p"$DB_PASS"
- #mysqlcheck -u $USUARIO -p $DB_PASS --auto-repair --optimize --all-databases
- #mysqlcheck -A -o --auto-repair -u $USUARIO -p $DB_PASS
- # Cambiamos a nuestro directorio de trabajo
- mkdir $WORK_DIR
- cd $WORK_DIR
- echo "Iniciando vaciado de todas las bases de datos."
- echo "==============================================="
- # Iniciamos un vaciado de todas las bases de datos del servidor.
- TABLES=`mysql -h $IP_SERVIDOR_MYSQL -u$USUARIO --password=$DB_PASS --execute="SHOW DATABASES;" |awk '{print($1)}' |grep -v "Database" |grep -v "information_schema"`
- for table in $TABLES; do
- echo "Respaldando la tabla $table..."
- file=$table.respaldo_`date +%Y%m%d`.sql
- mysqldump -h $IP_SERVIDOR_MYSQL -u"$USUARIO" -p"$DB_PASS" $table > $file
- echo "Comprimiendo $file ..."
- gzip $file
- done
- echo ""
- echo "RESPALDO TERMINADO!!!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement