Habilitar los logs binarios en MySQL o MariaDB

Los logs binarios son ficheros de MySQL que permiten recuperar datos de la base de datos desde el último backup hasta la última modificación o en un periodo de tiempo específico.

Para habilitarlos, añadiremos la siguiente directiva en el fichero /etc/my.cnf:

log-bin=mysql-bin

Al reiniciar la base de datos, veremos que se comienzan a generar estos ficheros:

[root]# ll mysql-bin*
-rw-rw---- 1 mysql mysql 142770 Aug 2 10:00 mysql-bin.000001
-rw-rw---- 1 mysql mysql 50415 Aug 2 10:02 mysql-bin.000002
-rw-rw---- 1 mysql mysql 38 Aug 2 10:00 mysql-bin.index
[root]#

En caso de necesitar restaurar algún dato, podemos utilizar el siguiente comando como ejemplo, adaptándolo a nuestras necesidades:

mysqlbinlog mysql-bin.000001 mysql-bin.000002 mysql-bin.000003 –database=Mi_base_de_datos –start-datetime=”2018-08-02 08:0:00″ –stop-datetime=”2018-08-02 20:00:00″ | mysql -u root -p

Podemos probar primero la instrucción antes de ejecutarla. Por ejemplo:

mysqlbinlog mysql-bin.000001 mysql-bin.000002 mysql-bin.000003 –database=Mi_base_de_datos –start-datetime=”2018-08-02 08:0:00″ –stop-datetime=”2018-08-02 20:00:00″ > /tmp/sql.sql

Limitar el espacio de los logs binarios de MySQL

Si no queremos que los logs binarios de MySQL nos ocupen un espacio ilimitado hasta llenar el filesystem, limitaremos el número de ficheros que queremos guardar como histórico y su tamaño con las siguientes directivas:

expire_logs_days = 14
# 1GB
max_binlog_size = 1073741824
COMPÁRTEME

2 comentarios en «Habilitar los logs binarios en MySQL o MariaDB»

Deja un comentario