2011-01-03 14 views
7

¿Hay alguna forma de supervisar/registrar a un usuario de MySQL y las consultas que ha ejecutado? Tuve que apagar el registro general mediante la consulta:Seguimiento de consultas de un usuario de MySQL

SET GLOBAL general_log = 'OFF'; 

porque de lo contrario el archivo de registro no era más procesable por los editores de texto. Estaba buscando una forma de activar este inicio de sesión para algunos usuarios que deseo monitorear, pero parece que no funciona de esa manera.

¿Hay alguna otra forma de saber todo lo que un usuario definido ejecuta en mi base de datos?

Gracias de antemano.

Respuesta

0

details on logging administration

MySQL Server puede crear un número de diferentes archivos de registro para ayudarle a ver lo que está llevando a cabo la actividad. Consulte la Sección 5.2, "Registros del servidor MySQL". Sin embargo, debe limpiar estos archivos regularmente para asegurarse de que los registros no ocupen demasiado espacio en disco.


En otros sistemas, se debe instalar un script cortos a sí mismo que se inicia desde cron (o su equivalente) para el manejo de archivos de registro.


Puede forzar a MySQL para comenzar a utilizar los nuevos archivos de registro volcando los registros. La descarga de registros se produce cuando emite una instrucción FLUSH LOGS o ejecuta un comando mysqladmin flush-logs, mysqladmin refresh, mysqldump --flush-logs o mysqldump --master-data.

0

Eche un vistazo a la herramienta mk-query-digest de maatkit, puede hacer algo similar a lo que desea. Por lo menos, debe ser capaz de ayudarle a analizar el registro de consultas general, si usted tiene que permitir de nuevo:

http://www.maatkit.org/doc/mk-query-digest.html

1

Hay algunas maneras en que puedo sugerir.

  1. SELECT * FROM information_schema.PROCESSLIST WHERE USER="someuser"; Ahora depende de usted el uso. Escriba un cronjob (linux) para almacenarlo en un archivo o escriba un evento MySQL para ingresarlo en una tabla mysql.
  2. uso general registro de consultas y utilizar herramientas como awk Linux, sed, grep, etc para analizar el archivo de registro para obtener un resultado deseable

Pero si usted no está aveces por escrito de comandos de línea de comandos Linux Puede utilizar mk-query-digest o incluso puede configurar herramientas de supervisión personalizadas como nagios, cacti, etc. Pero personalmente prefiero MONyog, hace tanto el punto 1 como el 2 perfectamente y lo mejor de todo es que tiene una GUI.

enter image description here

Cuestiones relacionadas