Pasar al contenido principal
www.keopx.net

Navegación principal

  • Inicio
  • Talks
  • Freelance Drupal Bilbao
  • Acerca de Keopx
  • Contacto
Menú de cuenta de usuario
  • Iniciar sesión

Sobrescribir enlaces de ayuda a la navegación

  1. Inicio

Script para crear backups de forma automatizada

By keopx, 23 Julio, 2009

Bueno este seria el script a ejecutar. Tenemos que tener en cuenta que es necesario tener montada la un unidad de NAS en una carpeta local y configurar el crontab para que se ejecute cuando consideremos necesario.

#!/bin/bash
# Script de terminal para realizar backups de todas las Bases de Datos de MySQL
# Volcado cada hora al servidor Nas /nasServer/mysql
# Descripcion detallada de los datos:
# Directorio: /nasServer/mysql/yyyy-mm-dd
# Fichero: mysql-DBNAME.2009-07-23-14:23:40.gz
# Ruta completa: /nasServer/mysql/yyyy-mm-dd/mysql-DBNAME.2009-07-23-14:23:40.gz
# -------------------------------------------------------------------------
# GNU GENERAL PUBLIC LICENSE
# Version 3, 29 June 2007
#
# Copyright (C) 2007 Free Software Foundation, Inc.
# Everyone is permitted to copy and distribute verbatim copies
# of this license document, but changing it is not allowed.
# -------------------------------------------------------------------------
# Ultima actualización: Jul-23-2009 - Asegurarse que NAS esta realmente montado en $NAS
# -------------------------------------------------------------------------
NOW=$(date +"%Y-%m-%d") # Formato yyyy-mm-dd
FILE="" # Uso en el bucle
NASBASE="/nasServer" # Punto de montage de NAS
BAK="${NASBASE}/mysql/${NOW}" # Ruta del directorio backup en $NAS
### Configuración del Server ###
#* Usuario de MySQL *#
MyUser="root"
#* PASSWORD del usuario de MySQL *#
MyPass="PASSWORD"
#* Host de MySQL *#
MyHost="127.0.0.1"
#* Binarios de MySQL *#
MYSQL="$(which mysql)"
MYSQLDUMP="$(which mysqldump)"
GZIP="$(which gzip)"
# Asegurarse que nas esta realmente montado
mount | awk '{ print $3}' |grep -w $NASBASE >/dev/null
if [ $? -ne 0 ]
then
echo "Error: NAS no montado en $NASBASE, por favor monta el Servidor NAS el un direcotio local local y vuelve a intentarlo."
exit 99
fi
### NAS debe montarse de forma avanzada ###
# Se asume que /nasServer esta montado via /etc/fstab
if [ ! -d $BAK ]; then
mkdir -p $BAK
else
:
fi
# Obtener la lista de todas las BBDD
DBS="$($MYSQL -u $MyUser -h $MyHost -p$MyPass -Bse 'show databases')"
# Comenzar volcado de la base de datos una a una
for db in $DBS
do
FILE=$BAK/mysql-$db.$NOW-$(date +"%T").gz
# Comprimir todas los ficheros con gzip.
$MYSQLDUMP -u $MyUser -h $MyHost -p$MyPass $db | $GZIP -9 > $FILE
done

Descarga:

backup_mysql.sh.tar.gz

Comentarios

El contenido de este campo se mantiene privado y no se mostrará públicamente.
Acerca de formatos de texto

HTML Restringido

  • Etiquetas HTML permitidas: <a href hreflang> <em> <strong> <cite> <blockquote cite> <code> <ul type> <ol start type> <li> <dl> <dt> <dd> <h2 id> <h3 id> <h4 id> <h5 id> <h6 id>
  • Saltos automáticos de líneas y de párrafos.
  • Las direcciones de correos electrónicos y páginas web se convierten en enlaces automáticamente.

Forcontu Master in Drupal 9

DrupalAssoc member

DrupalCampSpain2022: Introducción al desarrollo de módulos en Drupal 9

Seville Drupal Developer Days Individual Sponsor - 2017

I am speaker DrupalCamp Alicante 2018

I am speaker DrupalCamp Madrid 2017

I am speaker DrupalCamp Valencia 2014

I am Rules Ruler

Sponsored by

Isarea

Soy Ruben Egiguren a.k.a. keopx, actualmente soy freelance experto en Drupal de Bilbao

  • Reinicializar su contraseña
RSS feed
Powered by www.keopx.net