[Tuto] Sauvegarde automatique d'un serveur MySQL


  • Manchot Adélie

    L’objectif est de sauvegarder toutes les bases d’un serveur MySQL de façon régulière et automatique.

    • Création de l’utilisateur

    On va utiliser un utilisateur spécial pour mysqldump.

    GRANT LOCK TABLES, SELECT ON *.* TO backup@localhost;
    
    • Script de sauvegarde

    On sauvegarde l’ensemble des bases tous les jours, on utilise cron pour cela, en créant le fichier mysql-backup

    nano /etc/crond/daily/mysql-backup
    

    ou l’on renseignement :

    #!/bin/bash
    mysqldump --all-database -u backup > /home/backup/mysql/db.dump
    

    Il faut rendre exécutable le fichier :

    sudo chmod 755 mysql-backup
    
    • Rotation des sauvegarde

    Pour que les sauvegardes tournent sur un certain temps, il suffit d’utiliser logrotate.

    nano /etc/logrotate.d/mysql-backup
    
    /home/backup/mysql/db.dump {
        daily
        rotate 30
        compress
        missingok
        dateext
    }
    

    En l’occurrence les sauvegardes tournent tous les jours et sont conservées pendant 30 jours.



Il semble que votre connexion ait été perdue, veuillez patienter pendant que nous vous re-connectons.