Configurar el LOG de MySQL y/o MariaDB en GNU/Linux

MariaDB y MySQL

Como en cualquier servidor, en ocaciones nuestros servidores de Base de Datos (en este caso MySQL y/o MariaDB) pueden detenerse, no iniciar, o hacer algo que deben hacer, pero… ¿dónde nos indica con detalle qué está pasando?, precisamente en su LOG de actividades.

De forma predeterminada MySQL y/o MariaDB lo tienen en la carpeta / directorio de logs del servidor (/var/log/) en la carpeta dependiendo tu servidor:

Si es MySQL será:

1
-> /var/log/mysql/mysql.log

Si es MariaDB será:

1
-> /var/log/mariadb/mariadb.log

Tal vez ya has buscado en dichos directorios y no lo encontraste, ni:

1
2
-> /var/log/mysql/
-> /var/log/mariadb/

Significa que cuando se instaló no tuvo permiso de crear el archivo y, por consecuencia poder escribir en el archivo, o en el archivo de configuración del servidor no fue especificado.

Primeramente vamos a revisar el archivo de configuración de nuestro servidor, hay dos opciones como pueda estar configurado, todas las especificaciones en el archivo /etc/my.cnf (versiones antigüas), o distribuidos en una sub carpeta / directorio en donde tiene varios archivos, como el siguiente ejemplo:

1
2
3
4
5
6
7
8
9
10
11
[user@host ~]$ cat /etc/my.cnf
#
# This group is read both by the client and the server
# use it for options that affect everything
#
[client-server]

#
# include *.cnf from the config directory
#
!includedir /etc/my.cnf.d

En este caso, nos está indicando que está cargando todos los archivos que se encuentran en:

1
-> /etc/my.cnf.d

Sin importar la extensión que tengan (de forma predeterminada deberian ser *.cnf pero no, cargará todos). Nos dirigimos a dicha carpeta / directorio y veremos algo así:

1
2
3
4
5
6
[user@host ~]$ ls -al /etc/my.cnf.d/
-rw-r--r--   1 root root   295 May 21 08:02 client.cnf
-rw-r--r--   1 root root   763 May 21 08:02 enable_encryption.preset
-rw-r--r--   1 root root   232 May 21 08:02 mysql-clients.cnf
-rw-r--r--   1 root root  8916 Jun  6 15:16 server.cnf
-rw-r--r--   1 root root   120 May 21 08:02 spider.cnf

El archivo en cuestión es server.cnf, vamos a ver que tiene:

1
2
3
4
5
[user@host ~]$ cat /etc/my.cnf.d/server.cnf
# Debemos ver toda su configuración, pero vamos a buscar la siguiente linea en caso de usar MySQL:
log-error = /var/log/mysql.log
# Si usas MariaDB:
log-error = /var/log/mariadb.log

Si no la tiene deberás escribirla. Si ya está configurado de la forma anterior, deberías tenerlo en dicha ruta pero sino lo tienes, vamos a crearlo:

1
2
3
4
# Si usas MySQL:
[user@host ~]$ sudo touch /var/log/mysql.log
# Si usas MariaDB:
[user@host ~]$ sudo touch /var/log/mariadb.log

Con el comando anterior touch creamos un archivo de texto plano completamente vacío, pero con permisos de root pero solo el servidor deberá ser su dueño y tener sus permisos, por lo cual vamos a cambiarlo:

1
2
3
4
# Si usas MySQL:
[user@host ~]$ sudo chmod 640 /var/log/mysql.log && sudo chown mysql:mysql /var/log/mysql.log
# Si usas MariaDB (el usuario y el grupo siguen siendo mysql:
[user@host ~]$ sudo chmod 640 /var/log/mariadb.log sudo chown mysql:mysql /var/log/mariadb.log

Ahora solo nos toca reiniciar el servicio con el cual corre nuestro servidor de Base de Datos MySQL y/o MariaDB y volver a revisar el LOG:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Si usas MySQL:
[user@host ~]$ cat /var/log/mysql.log
Version: '8-MySQL'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Server
2022-06-13 16:20:53 0 [Note] Starting MySQL 8.2
2022-06-13 16:20:53 0 [Note] mariadbd: Aria engine: starting recovery
recovered pages: 0% 11% 44% 64% 84% 96% 100% (0.0 seconds); tables to flush: 2 1 0 (0.0 seconds);
2022-06-13 16:20:53 0 [Note] mariadbd: Aria engine: recovery done
2022-06-13 16:20:53 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2022-06-13 16:20:53 0 [Note] InnoDB: Number of transaction pools: 1
2022-06-13 16:20:53 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
2022-06-13 16:20:53 0 [Note] InnoDB: innodb_buffer_pool_size_max=327680m, innodb_buffer_pool_size=327680m

# Si usas MariaDB:
[user@host ~]$ cat /var/log/mariadb.log
Version: '10-MariaDB'  socket: '/var/run/mariadb/mariadb.sock'  port: 3306  MariaDB Server
2022-06-13 16:20:53 0 [Note] Starting MariaDB 10.11
2022-06-13 16:20:53 0 [Note] mariadbd: Aria engine: starting recovery
recovered pages: 0% 11% 44% 64% 84% 96% 100% (0.0 seconds); tables to flush: 2 1 0 (0.0 seconds);
2022-06-13 16:20:53 0 [Note] mariadbd: Aria engine: recovery done
2022-06-13 16:20:53 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2022-06-13 16:20:53 0 [Note] InnoDB: Number of transaction pools: 1
2022-06-13 16:20:53 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions
2022-06-13 16:20:53 0 [Note] InnoDB: innodb_buffer_pool_size_max=327680m, innodb_buffer_pool_size=327680m

Y listo, ya tenemos nuestro LOG configurado.

Ads Blocker Image Powered by Code Help Pro

Se detectó bloqueador de anuncios | Ad blocker detected

Hemos detectado que estás usando extensiones para bloquear anuncios. Por favor, apóyanos desactivando este bloqueador de anuncios.

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
100% Free SEO Tools - Tool Kits PRO