AnsweredAssumed Answered

[Backup] mon script, qu'en pensez-vous ?

Question asked by legaulois on Apr 12, 2010
Latest reply on Mar 28, 2011 by dranakan
Voilà je viens vous proposer mon script de backup à froid et voir ainsi ce que vous en pensez.

L'idée est la suivante :

==> Arrêt de tomcat
=> dump de mysql
=> rsync de alf_data
=> création d'un tar.gz avec le dump + rsync
==> redémarrage de tomcat

Et le script =>

#!/bin/bash
#—————————————————————#
# Script de backup à froid d'Alfresco                           #
#—————————————————————#
#
#

#
# Configuration des parametres
#
ALF_DATA_BASE=/var/lib/alfresco
ALF_DATA_DIRNAME=alf_data

BACKUP_DIR=/backups
TEMPORAIRE=/backups/tmp
MACHINE="$(hostname)"
DATE=DATE="$(date +"%d-%m-%Y")"
FICHIER_BACKUP=$MACHINE"_BACKUP_ALFRESCO_"$DATE".tar.gz"


DB_USERNAME=alfresco
DB_PWD=alfresco
DB_NAME=alfresco
OPTIONS=" –complete-insert –routines –triggers –allow-keywords –max_allowed_packet=50M –force"

INCREMENTDIR=`date +%Y-%m-%d_%Hh%M`

LOGFILE=/var/log/backup/backup-$DB_NAME-$INCREMENTDIR.log


#
# Fonctions
#
do_logging()
{
   echo "***" >> $LOGFILE
        echo "Sauvegarde du $INCREMENTDIR " >> $LOGFILE
   echo " " >> $LOGFILE
        echo "################################################" >> $LOGFILE
        du -chs $BACKUP_DIR/* >> $LOGFILE
        echo "################################################" >> $LOGFILE
        FIN=`date +%Y-%m-%d_%Hh%M`
   echo " " >> $LOGFILE
        echo "Sauvegarde fini le $FIN" >> $LOGFILE
   echo " " >> $LOGFILE
        df -h $ARCHIVEDEV >> $LOGFILE
        echo >> $LOGFILE
   echo " " >> $LOGFILE
        echo "***" >> $LOGFILE
}


rm -f /backups/tmp/alfresco*

/etc/init.d/tomcat5 stop
   echo "Arrêt de Tomcat Serveur à " `date +%H:%M` >> $LOGFILE
   echo " " >> $LOGFILE
   echo "Début du dump de la base "$DB_NAME" à " `date +%H:%M` >> $LOGFILE
   echo " " >> $LOGFILE
      for db in $DB_NAME
      do
      mysqlcheck -u $DB_USERNAME -p$DB_PWD -c -a $db
      mysqldump -u $DB_USERNAME -p$DB_PWD $OPTIONS $db -R > $TEMPORAIRE"/"$DB_NAME"-"$INCREMENTDIR".sql";
      done
   echo "Fin du dump de la base "$DB_NAME" à " `date +%H:%M` >> $LOGFILE
   echo " " >> $LOGFILE

rsync -a /var/lib/alfresco /backups/tmp/

   #Creation de l archive contenant les dumps

if [ -d $BACKUP_DIR ]; then
cd $TEMPORAIRE
tar -cvzf $BACKUP_DIR"/"$FICHIER_BACKUP *
fi


/etc/init.d/tomcat5 start
   echo "Démarrage de Tomcat Serveur à " `date +%H:%M` >> $LOGFILE

do_logging

Outcomes