Sauvegarde MySQL · 4 min read · Feb 10, 2026

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

11 Sauvegardes Incrémentales

mysql-zrm peut également effectuer des sauvegardes incrémentales, cependant j’ai rencontré quelques problèmes avec cela. Tout d’abord, j’ai dû configurer MySQL pour écrire ses bin-logs dans /var/lib/mysql (en modifiant /etc/mysql/my.cnf) car c’est là que mysql-zrm s’attend à les trouver. Ensuite,

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

semblait fonctionner, mais

mysql-zrm --action parse-binlogs --source-directory=/var/lib/mysql --backup-set dailyrun

donnait une erreur :

| Use of uninitialized value in concatenation (.) or string at /usr/bin/mysql-zrm line 1305. INFO: mysql-zrm-version ERROR: cannot open index file /var/lib/mysql/index No such file or directory |

C’est pourquoi je pense qu’il est préférable de faire des sauvegardes complètes pour l’instant au lieu de sauvegardes incrémentales.

12 Sauvegardes Distantes

mysql-zrm vous permet également de faire des sauvegardes depuis des serveurs MySQL distants via le réseau. Cependant, cela m’a également causé quelques problèmes.

12.1 Premier Essai

Lors de mon premier essai, je voulais faire une sauvegarde (au format brut) d’un serveur MySQL sur un système SuSE 10.0 distant. J’ai modifié /etc/mysql-zrm/mysql-zrm.conf et y ai mis l’utilisateur distant, le mot de passe et le nom d’hôte, puis j’ai exécuté

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

Le résultat était le suivant :

Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log  
Use of uninitialized value in concatenation (.) or string at /usr/bin/mysql-zrm line 1305.  
INFO: mysql-zrm-version  
WARNING: Binary logging is off. Incremental and logical backup will not work.  
INFO: backup-set=dailyrun  
INFO: backup-date=20060927095528  
INFO: backup-date-epoch=1159343728  
INFO: mysql-version=4.1.13  
INFO: backup-directory=/var/lib/mysql-zrm/dailyrun/20060927095528  
INFO: backup-level=0  
WARNING: Database test is empty and hence will not be backedup  
WARNING: Database tmp is empty and hence will not be backedup  
ERROR: Output of command: 'mysqlhotcopy' is  
DBI connect(';host=192.168.0.163;mysql_read_default_group=mysqlhotcopy','root',...) failed: Client does not support authentication protocol requested by server; consider upgrading MySQL client at /usr/bin/mysqlhotcopy line 182  
ERROR: mysqlhotcopy command did not succeed.  
Command used is mysqlhotcopy --quiet --user=root --password=*** --host=192.168.0.163 db_ispconfig mysql "/var/lib/mysql-zrm/dailyrun/20060927095528" > /tmp/4Z75iIAeo5 2>&1  
Return value is 65280  
INFO: backup-status=Backup failed  
INFO: Backup failed  
ERROR: /usr/bin/mysql-zrm did not finish successfully

Je suppose que cela s’est produit à cause de versions différentes de MySQL sur les deux systèmes.

12.2 Deuxième Essai

Lors de mon deuxième essai, je voulais faire une sauvegarde (encore au format brut) d’une base de données MySQL sur un serveur Debian Sarge distant. Les systèmes local et distant avaient la même version de MySQL. J’ai exécuté

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

et j’ai obtenu les erreurs suivantes :

Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log  
Use of uninitialized value in concatenation (.) or string at /usr/bin/mysql-zrm line 1305.  
INFO: mysql-zrm-version  
INFO: backup-set=dailyrun  
INFO: backup-date=20060927100653  
INFO: backup-date-epoch=1159344413  
INFO: mysql-version=4.1.11-Debian_4sarge7-log  
INFO: backup-directory=/var/lib/mysql-zrm/dailyrun/20060927100653  
INFO: backup-level=0  
WARNING: Database test is empty and hence will not be backedup  
ERROR: Output of command: 'mysqlhotcopy' is  
Cannot open dir '/var/lib/mysql/web34_db1': No such file or directory at /usr/bin/mysqlhotcopy line 293.  
ERROR: mysqlhotcopy command did not succeed.  
Command used is mysqlhotcopy --quiet --user=root --password=*** --host=192.168.0.110 mysql web34_db1 "/var/lib/mysql-zrm/dailyrun/20060927100653" > /tmp/yxFsViAlbm 2>&1  
Return value is 512  
INFO: backup-status=Backup failed  
INFO: Backup failed  
ERROR: /usr/bin/mysql-zrm did not finish successfully

Il semblait qu’il manquait le répertoire /var/lib/mysql/web34_db1 (web34_db1 est l’une des bases de données sur le système distant) sur le système local ! J’ai donc créé ce répertoire :

mkdir /var/lib/mysql/web34_db1

et j’ai exécuté

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

à nouveau, et cette fois cela a fonctionné, mais je doute que ce soit la façon dont cela est censé fonctionner…

12.3 Troisième Essai

Cette fois, j’ai essayé de faire une sauvegarde depuis le même système Debian Sarge distant qu’auparavant, mais au format logique au lieu de brut. J’ai exécuté

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

et j’ai obtenu l’erreur suivante :

Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log  
Use of uninitialized value in concatenation (.) or string at /usr/bin/mysql-zrm line 1305.  
INFO: mysql-zrm-version  
WARNING: Binary logging is off. Incremental and logical backup will not work.  
INFO: backup-set=dailyrun  
INFO: backup-date=20060927095501  
INFO: backup-date-epoch=1159343701  
INFO: mysql-version=4.1.13  
INFO: backup-directory=/var/lib/mysql-zrm/dailyrun/20060927095501  
INFO: backup-level=0  
ERROR: Binary logging is off. Logical backup cannot be done  
INFO: backup-status=Backup failed  
INFO: Backup failed  
ERROR: /usr/bin/mysql-zrm did not finish successfully

Mais cette fois, c’est le comportement normal car pour les sauvegardes logiques distantes, MySQL doit être configuré avec SSL, comme décrit sur http://mysqlbackup.zmanda.com/index.php/Do_I_need_to_make_changes_to_MySQL_database_configuration%3F. Malheureusement, les paquets MySQL de Debian Sarge viennent sans support SSL :

mysqld --ssl --help
060927 12:26:09 [ERROR] mysqld: unknown option '--ssl'

Je me suis connecté à la console MySQL :

mysql -u root -p

et j’ai exécuté

SHOW VARIABLES LIKE 'have_openssl';

et j’ai obtenu le même résultat :

| +---------------+-------+ | Variable_name | Value | +---------------+-------+ | have_openssl | NO | +---------------+-------+ 1 row in set (0.01 sec) |

Pas de support SSL…

13 Liens

Share: X/Twitter LinkedIn

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

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