systemadmin.es > Backup > Tipos de backups con MySQL

Tipos de backups con MySQL

Últimamente hemos visto varios métodos para hacer backup de una base de datos MySQL, vamos a ver un resumen:

En el caso que deseemos hacer un backup lógico deberemos usar mysqldump. El principal inconveniente es que va a bloquear la base de datos mientras este activo, por lo que con el tamaño de la base de datos va creciendo el tiempo que queda bloqueada. Aún a pesar del tiempo de bloqueo, siempre resulta útil tener un backup lógico para facilitar las recuperaciones parciales de tablas, cosa que con un backup físico sería mucho más complicado.

En los backups con mysqldump lo fácil es realizarlo de toda la base de datos completo, aunque perfectamente válido luego para recuperar una tabla en concreto y no la base de datos completa va a resultar más complicado, por lo que mi recomendación es siempre realizarlo en un fichero por tabla.

Para hacer un backup físico podemos usar snapshots LVM. Su principal ventaja es que vamos a bloquear durante muy poco tiempo la base de datos, solo deberemos ir con cuidado si en nuestra base de datos se suelen correr queries muy largas, por lo que hasta que no termine dicha query vamos a tener que esperar para hacer el flush tables with read lock.

En otras ocasiones también hemos visto como hacer backups físicos de MySQL con varios voluemenes LVM.

El principal inconveniente de los snapshots LVM aparece con las tablas InnoDB, las cuales son más complicadas de restaurar parcialmente. Mediante discard/import tablespace podemos realizar una recuperación parcial de una base de datos InnoDB desde un snapshot.

Relacionados

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>