Backup MySQL · 3 min read · Feb 10, 2026
Backup e Ripristino MySQL Con mysql-zrm Su Debian Sarge - Pagina 5
11 Backup Incrementali
mysql-zrm può anche eseguire backup incrementali, tuttavia ho avuto alcuni problemi con esso. Prima ho dovuto configurare MySQL per scrivere i suoi bin-log in /var/lib/mysql (modificando /etc/mysql/my.cnf) perché è lì che mysql-zrm si aspetta di trovarli. Successivamente,
mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 1sembrava funzionare, ma
mysql-zrm --action parse-binlogs --source-directory=/var/lib/mysql --backup-set dailyrundava un errore:
| 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 |
Ecco perché penso sia meglio fare backup completi per ora invece di backup incrementali.
12 Backup Remoti
mysql-zrm ti consente anche di eseguire backup da server MySQL remoti tramite la rete. Tuttavia, questo ha causato anche alcuni problemi per me.
12.1 Primo Tentativo
Nel mio primo tentativo volevo eseguire un backup (in formato raw) di un server MySQL su un sistema remoto SuSE 10.0. Ho modificato /etc/mysql-zrm/mysql-zrm.conf e ho inserito l’utente remoto, la password e il nome host, poi ho eseguito
mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0Il risultato è stato questo:
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 successfullyPenso che questo sia successo a causa delle diverse versioni di MySQL sui due sistemi.
12.2 Secondo Tentativo
Nel mio secondo tentativo volevo eseguire un backup (ancora in formato raw) di un database MySQL su un server remoto Debian Sarge. Sia il sistema locale che quello remoto avevano la stessa versione di MySQL. Ho eseguito
mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0e ho ottenuto i seguenti errori:
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
Sembra che mancasse la directory /var/lib/mysql/web34_db1 (web34_db1 è uno dei database sul sistema remoto) sul sistema locale! Così l’ho creata:
mkdir /var/lib/mysql/web34_db1e ho eseguito
mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0ancora, e questa volta ha funzionato, ma dubito che sia il modo in cui dovrebbe essere…
12.3 Terzo Tentativo
Questa volta ho provato a fare un backup dallo stesso sistema remoto Debian Sarge di prima, ma in formato logico invece che raw. Ho eseguito
mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0e ho ottenuto il seguente errore:
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 successfullyMa questa volta è il comportamento normale perché per i backup logici remoti MySQL deve essere configurato con SSL, come descritto su http://mysqlbackup.zmanda.com/index.php/Do_I_need_to_make_changes_to_MySQL_database_configuration%3F. Sfortunatamente, i pacchetti MySQL di Debian Sarge vengono forniti senza supporto SSL:
mysqld --ssl --help060927 12:26:09 [ERROR] mysqld: unknown option '--ssl'Ho effettuato il login nella shell di MySQL:
mysql -u root -pe ho eseguito
SHOW VARIABLES LIKE 'have_openssl';e ho ottenuto lo stesso risultato:
| +---------------+-------+ | Variable_name | Value | +---------------+-------+ | have_openssl | NO | +---------------+-------+ 1 row in set (0.01 sec) |
Nessun supporto SSL…
13 Link
- mysql-zrm: http://mysqlbackup.zmanda.com
- Manuale mysql-zrm: http://mysqlbackup.zmanda.com/index.php/Zmanda_Recovery_Manager_for_MySQL
- Zmanda: http://www.zmanda.com
- MySQL: http://www.mysql.com
- Debian: http://www.debian.org
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.