Xtrabackup

Xtrabackup es una herramienta que permite hacer una copia de todo el directorio de datos de MySQL, sin la necesidad de detener el servicio. Se puede enviar la copia a otro servidor para contingencia. Es mejor que hacer la copia usando mysqldump.

Para el ejercicio se ha usado CentOS 7.

Ejecutar en ambos servidores:
yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
yum install percona-xtrabackup-24

Hacer la copia en el servidor origen:
mkdir -p /var/xtrabackup/mysql
xtrabackup -u root -pCLAVE_MYSQL –backup –target-dir=/var/xtrabackup/mysql
xtrabackup –prepare –target-dir=/var/xtrabackup/mysql
chown -R mysql.mysql /var/xtrabackup/mysql

Copiar el archivo /etc/my.cnf y el directorio /var/xtrabackup/mysql al servidor destino que tenga la misma versiĆ³n de MySQL. La copia del directorio se puede hacer con rsync.

Para restaurar la copia, ejecutar esto en el servidor destino. Primero se debe detener el servicio MySQL:
xtrabackup –move-back –target-dir=/var/xtrabackup/mysql –datadir=/var/lib/mysql
chown -R mysql.mysql /var/lib/mysql

Iniciar el servicio MySQL.

El proceso se puede mejorar haciendo la copia directamente en el servidor destino, usando sshfs. Con esto se monta un directorio del servidor destino en el servidor origen.

Instalar sshfs en el servidor origen:
yum install epel-release
yum install sshfs

Crear directorio en ambos servidores:
mkdir -p /backup/mysql

Montar el directorio desde el servidor origen:
sshfs root@IP_DESTINO:/backup/mysql /backup/mysql

Con esto la copia hecha en el directorio /backup/mysql se almacena en el servidor destino.

Leave a Reply