Paramètrage d'un cron pour faire un dump horaire des bases Laurux.

Sur le serveur MySQL:

1- Editer le fichier /etc/crontab
    sudo nano /etc/crontab
Copier la ligne suivante : 10  9-19    * * 2-6     root    /bin/backup-mysql > /tmp/result 2>&1   # Sauvegarde horaire des bases de données
Sauvegarder, Ctrl + O et fermer l'éditeur Ctrl + X
Ce cron va lancer l'executable /bin/backup-mysql toutes les heures de 9 heures à 19 heures. Si un message d'erreur est détecté alors il sera placé dans le fichier result sous /tmp

2- Editer le fichier /bin/backup-mysql
    sudo nano /bin/backup-mysql
Copier les lignes suivantes :
      #!/bin/sh
      # sauvegarde journalière des bases de données
      # A modifier selon la configuration des machines :
      USER=jack
      PASS=jack
      DESTINATION=/home/jack/sauve
      DESTINATION2=/192.168.0.14/home/Accueil/sauve
      DATE=`date +%Y-%m-%d`
      TIME=`date +%H:%M`
      DAY=`date +%d`
      DEL=`TZ=CST+24 date +%Y-%m-%d`

      # On sauvegarde les bases

      mysqldump --lock-tables=0 -h localhost -u $USER --password=$PASS Laurux01 --add-drop-table | gzip > $DESTINATION/Laurux01-$TIME.$DATE.sql.gz
      mysqldump --lock-tables=0 -h localhost -u $USER --password=$PASS Laurux02 --add-drop-table | gzip > $DESTINATION/Laurux02-$TIME.$DATE.sql.gz

      # répéter les 2 lignes précédentes autant de fois que de bases à sauvegarder

      # On efface les sauvegardes de la veille
      rm -rf $DESTINATION/*.$DEL.sql.gz
      rm -rf $DESTINATION2/*.$DEL.sql.gz

      # On copie les sauvegardes sur le repertoire distant
      cp $DESTINATION/Laurux01-$TIME.$DATE.sql.gz $DESTINATION2/Laurux01-$TIME.$DATE.sql.gz
      cp $DESTINATION/Laurux02-$TIME.$DATE.sql.gz $DESTINATION2/Laurux02-$TIME.$DATE.sql.gz

4- Donner les droits d'execution au fichier.
    sudo chmod o-w backup-mysql


4- Relancer le service crontab.
    sudo service cron restart


 ----------------------------------------------------------------------------------------------------------------------