En ocasiones tenemos problemas con nuestra base de datos en MySQL o MariaDB y necesitamos ver dónde puede estar el problema. Para ello necesitamos activar los logs en MySQL o MariaDB.
Os explicaré como poder activar los logs a continuación.
Primero de todo vemos dónde vamos a colocar el archivo de logs. En éste ejemplo usaré un CentOS 7 y lo ubicaré en:
/var/log/mariadb.log
conectaremos a nuestro mysql y lo que haremos será indicar que la salida de los logs será a un archivo.
SET GLOBAL log_output = 'FILE';
A continuación especificaremos dónde guardaremos los logs.
SET GLOBAL general_log_file='/var/log/mariadb.log';
Y finalmente habilitamos los logs.
SET GLOBAL general_log = 'ON';
Con ésto habremos activado los logs y podremos ver en el archivo especificado.
Es recomendable sólamente activar los logs para troubleshooting. Si dejamos los logs activados siempre, podemos llegar a tener problemas de espacio en disco ya que los logs almacenarán todas las queries y consultas que hagamos a nuestras bases de datos.
Para desactivar los logs, haremos lo siguiente:
SET GLOBAL general_log = 'OFF';
Para saber si tenemos activados los logs o no, lo podremos ver con
SHOW VARIABLES LIKE "general_log%";
Por defecto los logs mostrarán unicamente las consultas que hacemos, para que nos muestren más información, tendremos que cambiar el nivel de debug de los logs.
SET GLOBAL log_warnings= 3;
Podemos ver todos los niveles de debug en el siguiente enlace:
https://mariadb.com/kb/en/error-log/
Espero que os sirva de ayuda para cuando tenemos problemas con nuestras bases de datos y queremos ver un poco más de información para solucionar el problema.
Norman trabaja como Administrador de Sistemas con más de 12 años de experiencia en entornos Windows, Linux, VMware, SAN, Redes. | MCSA | CCNA | VCP-DCV | vExpert
Buen post. Un saludo.