[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [MySQL] Backups en linea



No se si le sentara mal a alguien que postee aqui mi script.
Este script hace un tar.gz de un subdirectorio de mi home donde tengo las webs en las que estoy trabajando y hace un volcado de todas las tablas de la base de datos mysql. Después se guarda todo en /var/backups/webs/ (si lo ejecutas como usuario necesitaras permisos de escritura en ese directorio)

A lo mejor con la línea:

mysqldump -A -a --add-drop-table -uroot -p >copia_mysql.sql ;

te vale...

Ahí va:
===============backup_webs.sh===================
#!/bin/bash
################################
##SCRIPT DE CREACCIÓN  tar.gz                             ##
##y volcado del mysql                                               ##
################################
#modificar desde aqui

#directorio padre del que queremos hacer el tar.gz
ruta=/home/mario;

#directorio a hacer el tar.gz (ejemplo /home/mario/webs)
#IMPORTANTE: sin barra al final
carpeta_a_grabar=webs;

#directorio para archivar las copias
mover_a=/var/backups/webs/;
archivo_sql=/home/mario/webs/databases_;
############
##hasta aqui
############
stamp=`date +'%F__%H-%M'`;
ruta_real=`pwd`;

if [ $ruta_real != $ruta ] ; then
cd $ruta;
fi

filename="backup_"${carpeta_a_grabar}"_"${stamp}".tar";

echo "Necesito un usuario y contraseña del servidor mysql...";
echo -n "  Usuario: ";
read usuario;
mysqldump -A -a --add-drop-table -u${usuario} -p > ${archivo_sql}${stamp}.sql ;

echo "Espere.....se esta creando la copia de seguridad.";
tar -cf ${filename} ${carpeta_a_grabar};
echo "Comprimiendo......";
gzip -f ${filename};
echo "";
echo "OK Creado copia de seguridad "${filename}".gz";
mv ${filename}.gz ${mover_a} ;
echo "Movido archivo a "${mover_a};

rm ${archivo_sql}${stamp}.sql;

echo "";
echo "Actualmente hay: "`ls ${mover_a} | grep -c "tar.gz"`" copias de seguridad.";

numero=`expr substr "\`du -sh "${mover_a}"\`" 1 2`;

echo -n "Espacio ocupado: "
echo -n $numero;
echo -n " Mb.";
echo "";
if [ $ruta_real != $ruta ] ; then
cd $ruta_real;
fi

============================================



El lun, 08-11-2004 a las 09:15 -0500, Fernando Fauche Gonzalez escribió:
Buenos dias tengan todos ustedes...

Tengo informacion en varios servidores de bases de datos ubicados en
la web, todos en MySQL y con privilegios administrativos....

Mi inquietud es la siguiente....

Tengo instalado MySQL en una PC con Linux Woody, con linea dedicada y
lo que requiero es hacer un script que me permita realizar un backup
completo a mi computadora de cada una de las bases de datos desde mi
consola...

root@webmaster#:  backup_BD

Se que es posible, alguno tendra un script de ejemplo con el que me
pueda ayudar?

Mil gracias....


-- 
atentamente,


Fernando Fauche Gonzalez
       Web Developer
  http://www.peru-web.com/
---
Visita 'Mis Favoritos en linea' en  http://peruenlinea.com/
---




Reply to: