Sauvegarde MySQL · 3 min read · Feb 12, 2026

Sauvegarde et Récupération MySQL Avec mysql-zrm Sur Debian Sarge - Page 3

4 Exemples de Sauvegarde

Avec mysql-zrm, vous pouvez maintenir plusieurs sauvegardes, appelées ensembles de sauvegarde, par exemple, une sauvegarde quotidienne, une sauvegarde hebdomadaire, une sauvegarde pour votre base de données osCommerce, une sauvegarde pour votre base de données vBulletin, etc.

Maintenant, créons notre première sauvegarde que nous créons dans l’ensemble de sauvegarde dailyrun :

mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0

Cela sauvegardera immédiatement toutes les bases de données dans le répertoire /var/lib/mysql-zrm/dailyrun, et il créera également le répertoire /etc/mysql-zrm/dailyrun. –backup-level 0 signifie : faire une sauvegarde complète (vous pouvez également faire des sauvegardes incrémentielles (–backup-level 1), mais je vais en parler plus tard - pour l’instant, nous faisons seulement des sauvegardes complètes).

Si vous avez activé les notifications par e-mail, vous devriez avoir reçu un e-mail avec le statut de la sauvegarde maintenant. Mais vous pouvez également générer un rapport sur le statut de la sauvegarde en ligne de commande comme ceci :

mysql-zrm-reporter --where backup-set=dailyrun --show backup-status-info

La sortie ressemblera à ceci :

| backup_set backup_date backup_level backup_status comment ---------------------------------------------------------------------------------------------------------------------- dailyrun Tue 26 Sep 2006 07:57:47 PM CEST 0 Backup succeeded ---- |

Vous pouvez également générer quelques autres rapports avec les commandes suivantes :

mysql-zrm-reporter --where backup-set=dailyrun --show backup-method-info  
mysql-zrm-reporter --where backup-set=dailyrun --show backup-retention-info  
mysql-zrm-reporter --where backup-set=dailyrun --show backup-performance-info  
mysql-zrm-reporter --where backup-set=dailyrun --show restore-full-info  
mysql-zrm-reporter --where backup-set=dailyrun --show restore-incr-info  
mysql-zrm-reporter --where backup-set=dailyrun --show replication-info

Essayez chacun d’eux pour voir quelles informations ils fournissent.

Maintenant, nous voulons créer une sauvegarde quotidienne et une sauvegarde hebdomadaire qui sera exécutée automatiquement par le système (c’est-à-dire sans notre interaction). Voici comment nous pouvons configurer ces sauvegardes :

mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --backup-level 0  
mysql-zrm-scheduler --add --interval weekly --backup-set weeklyrun --backup-level 0

(Avec la deuxième commande, nous avons créé un nouvel ensemble de sauvegarde appelé weeklyrun.)

Vérifions maintenant nos sauvegardes programmées :

mysql-zrm-scheduler --query

La sortie ressemble à ceci :

| Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log 0 3 * * * /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set dailyrun --backup-level 0 0 4 * * * /usr/bin/mysql-zrm --action purge --destination /var/lib/mysql-zrm 0 2 * * 0 /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set weeklyrun --backup-level 0 |

Comme vous pouvez le voir, la sauvegarde quotidienne est exécutée chaque jour à 03:00h, et la sauvegarde hebdomadaire est exécutée chaque dimanche à 02:00h.

(Entre parenthèses, au lieu de

mysql-zrm-scheduler --query

vous pourriez également exécuter

crontab -l

pour obtenir les mêmes informations.)

Si vous souhaitez commencer la sauvegarde quotidienne à un autre moment, par exemple à 13:35h, vous pouvez le faire comme ceci :

mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --start 13:35 --backup-level 0

Pour supprimer une sauvegarde programmée de cron, vous pouvez le faire comme ceci :

mysql-zrm-scheduler --delete --interval weekly

Cela supprimerait la sauvegarde hebdomadaire exécutée le dimanche à 02:00h de cron. Si vous souhaitez supprimer la sauvegarde quotidienne qui est programmée pour 13:35h, vous pouvez le faire comme ceci :

mysql-zrm-scheduler --delete --interval daily --start 13:35

Mais vous pouvez également exécuter

crontab -e

pour modifier vos tâches cron, ce qui est parfois plus facile que de traiter avec mysql-zrm-scheduler.

5 Rapports Personnalisés, Rapports HTML

Dans le chapitre 4, j’ai déjà mentionné quels types de rapports sont disponibles. Mais vous pouvez également générer des rapports personnalisés, c’est-à-dire que vous pouvez spécifier quelles colonnes/informations vous souhaitez voir. Par exemple,

mysql-zrm-reporter --fields backup-set,backup-date,backup-level,backup-status --where backup-set=dailyrun

génère un rapport pour l’ensemble de sauvegarde dailyrun qui montre les colonnes backup-set, backup-date, backup-level, et backup-status :

| backup_set backup_date backup_level backup_status ------------------------------------------------------------------------------------------------ dailyrun Tue 26 Sep 2006 07:57:47 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 07:58:08 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 07:58:31 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 08:24:04 PM CEST 0 Backup succeeded |

Une liste de toutes les colonnes est disponible sur http://mysqlbackup.zmanda.com/index.php/What_information_can_be_obtained_from_a_backup_report%3F.

mysql-zrm vous permet également de créer des rapports HTML. Supposons que vous ayez un serveur web (par exemple, Apache) installé sur votre système avec le répertoire racine des documents /var/www. Maintenant, exécutez

mysql-zrm-reporter --show backup-status-info --where backup-set=dailyrun --type html --output /var/www/backup-status-dailyrun.html

Cela crée le fichier HTML backup-status-dailyrun.html dans votre répertoire /var/www que vous pouvez maintenant accéder dans votre navigateur (par exemple, http://server1.example.com/backup-status-dailyrun.html):

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.