Registo de eventos Mysql (monitorização)
Obrigado
1 answers
Você poderá activar o registo de consultas lentas no servidor de MySQL de modo a registar as consultas lentas num ficheiro ou tabela MySQL. Siga estes passos:
-
Verifique se o registo da pesquisa lenta está activo para o seu servidor de MySQL ou não. Execute esta pesquisa no servidor de MySQL.
mysql> show global variables like "%slow_query_log%"; +---------------------+----------------------------------+ | Variable_name | Value | +---------------------+----------------------------------+ | slow_query_log | OFF | | slow_query_log_file | /var/lib/mysql/siddhant-slow.log | +---------------------+----------------------------------+ 2 rows in set (0.00 sec)
-
Se o registo da consulta lenta não estiver activo, active-o assim.(ou você pode ativá-lo no meu.cnf ou a minha.ficheiro de configuração do MySQL ini)
mysql> set global slow_query_log="ON"; Query OK, 0 rows affected (0.01 sec)
-
Verifique também a pesquisa longa tempo de execução, ou seja, o tempo tomado pela consulta para ser considerado como uma consulta lenta. As consultas demorando mais tempo do que este valor seriam registradas no log da consulta lenta.
mysql> show global variables like "%long_query%"; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 row in set (0.00 sec)
-
Defina este valor como segue.(aqui estou ajustando para dois segundos)
mysql> set global long_query_time=2; Query OK, 0 rows affected (0.00 sec)
Agora as consultas lentas serão registadas na localização do ficheiro de registo de consultas lentas, tal como anteriormente foi devolvido pela consulta. I requisitos são tais que eu preciso monitorar MySQL em tempo real, você pode dar uma olhada nesta GUI comercial MySQL-Monitoring Tool . Ele analisa o log de consulta lenta em tempo real.