Quiero usar syslog para registrar MySQL (5.1.41) en Ubuntu (10.04 LTS). Encontré información que generaba un registro de errores en syslog.
[mysqld_safe]
syslog
Pero quiero usar syslog para registrar registros generales y registros de consultas lentas. Por favor, avíseme cómo escribir el archivo de configuración?
No pude encontrar cómo hacerlo en el manual de referencia.
http://dev.mysql.com/doc/refman/5.1/en/log-destinations.html
log_syslog
.Respuestas:
Esto es MUCHO más simple hecho de esta manera:
cd a las carpetas de mysql:
en my.cnf dilo:
Luego, configure su syslog / syslog-ng para leer la tubería FIFO y hacer lo que quiera.
Sin embargo, en mi caso, lo canalizo a través de la red a un servidor centralizado con solo los registros de errores y los registros de consultas lentas.
En situaciones en las que desea conservar también la copia local, simplemente configúrela como salida a la tabla y al archivo como se describe anteriormente.
fuente
Ese mecanismo es completamente diferente del syslog del sistema operativo.
La configuración de la salida de registro se puede establecer en TABLE, FILE (predeterminado) o NONE
si usas esto
Esto hará que el registro para el registro general y / o el registro lento vaya a un archivo CSV. Puede convertir ese CSV a MyISAM de la siguiente manera:
Luego puede dejar que este archivo crezca enormemente y tendrá que purgar la tabla de vez en cuando. Aquí se explica cómo purgar la tabla general_log y conservar los últimos 3 días:
¿Qué pasa con el syslog (var / log / messages)? Debes escribir eso tú mismo. Primero, o necesitas esto:
si desea recopilar el registro general en ambos formatos o
solo por el formato de archivo.
Ahora haga un script para recopilar cambios en /var/log/general.log. El script debería parecerse mucho a esto:
Ejecute este script cada minuto. Recomiendo truncar el registro general cada medianoche como este
Darle una oportunidad !!!
fuente
En /etc/my.cnf, configúrelo.
Editar /etc/rsyslog.conf (RHEL / CentOS) de archivos y permitir que el módulo imfile leer /path/to/mysql/dir/mysql-general.log y luego, enviarlo al servidor de registro del sistema remoto, respetando un intervalo configurado en el Parámetro PollingInterval .
Esta sección debería verse así a continuación:
Uncoment la línea con WorkDirectory
Y configúrelo para enviar todos los registros de forma remota
O
fuente