Copia de Seguridad · 3 min read · Feb 10, 2026

Copia de seguridad y recuperación de MySQL con mysql-zrm en Debian Sarge - Página 5

11 Copias de seguridad incrementales

mysql-zrm también puede hacer copias de seguridad incrementales, sin embargo, tuve algunos problemas con ello. Primero, tuve que configurar MySQL para que escribiera sus bin-logs en /var/lib/mysql (editando /etc/mysql/my.cnf) porque ahí es donde mysql-zrm los espera. Después,

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

parecía funcionar, pero

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

dio un error:

| 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 |

Por eso creo que es mejor hacer copias de seguridad completas por ahora en lugar de copias de seguridad incrementales.

12 Copias de seguridad remotas

mysql-zrm también te permite hacer copias de seguridad desde servidores MySQL remotos a través de la red. Sin embargo, esto también me causó algunos problemas.

12.1 Primer intento

En mi primer intento quería hacer una copia de seguridad (en formato bruto) de un servidor MySQL en un sistema remoto SuSE 10.0. Edité /etc/mysql-zrm/mysql-zrm.conf y puse el usuario remoto, la contraseña y el nombre del host en él, luego ejecuté

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

El resultado fue este:

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

Supongo que esto sucedió debido a diferentes versiones de MySQL en ambos sistemas.

12.2 Segundo intento

En mi segundo intento quería hacer una copia de seguridad (nuevamente en formato bruto) de una base de datos MySQL en un servidor remoto Debian Sarge. Tanto el sistema local como el remoto tenían la misma versión de MySQL. Ejecuté

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

y obtuve los siguientes errores:

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

Parece que faltaba el directorio /var/lib/mysql/web34_db1 (web34_db1 es una de las bases de datos en el sistema remoto) en el sistema local. Así que lo creé:

mkdir /var/lib/mysql/web34_db1

y ejecuté

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

nuevamente, y esta vez funcionó, pero dudo que esta sea la forma en que se supone que debe ser…

12.3 Tercer intento

Esta vez intenté hacer una copia de seguridad desde el mismo sistema remoto Debian Sarge que antes, pero en formato lógico en lugar de bruto. Ejecuté

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

y obtuve el siguiente error:

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

Pero esta vez es el comportamiento normal porque para copias de seguridad lógicas remotas MySQL necesita estar configurado con SSL, como se describe en http://mysqlbackup.zmanda.com/index.php/Do_I_need_to_make_changes_to_MySQL_database_configuration%3F. Desafortunadamente, los paquetes de MySQL de Debian Sarge vienen sin soporte SSL:

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

Inicié sesión en el shell de MySQL:

mysql -u root -p

y ejecuté

SHOW VARIABLES LIKE 'have_openssl';

y obtuve el mismo resultado:

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

Sin soporte SSL…

13 Enlaces

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.