Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como habilitar o log de consulta lenta no MySQL


Este artigo descreve como habilitar o log de consulta lenta do MySQL. Você pode usar o log de consulta lenta para ajudar a determinar quais consultas de banco de dados demoram muito para serem executadas.
Este artigo se aplica apenas aos produtos listados nos Detalhes do artigo Barra Lateral. Você deve ter acesso root ao servidor para seguir esses procedimentos. Se você possui um VPS Gerenciado ou Servidor Dedicado Gerenciado (e não tem acesso root) e deseja habilitar o log de consultas lentas, abra um ticket no Portal do Cliente em https://my.a2hosting.com.

Ativando o log de consultas lentas


As consultas lentas podem afetar o desempenho do banco de dados e o desempenho geral do servidor. O recurso de log de consultas lentas no MySQL permite registrar consultas que excedem um limite de tempo predefinido. Isso simplifica muito a tarefa de encontrar consultas ineficientes ou demoradas.

Para habilitar o log de consultas lentas no MySQL, siga estas etapas:
  1. Faça login em seu servidor usando SSH.
  2. Na linha de comando, digite o seguinte comando:
    mysql -u root -p
  3. Digite a senha raiz do MySQL.

  4. Para habilitar o log de consultas lentas, digite o seguinte comando no prompt mysql>:

    SET GLOBAL slow_query_log = 'ON';

  5. Existem opções adicionais que você pode definir para o log de consulta lenta:

    • Por padrão, quando o registro de consulta lenta está ativado, ele registra qualquer consulta que leve mais de 10 segundos para ser executada. Para alterar esse intervalo, digite o seguinte comando, substituindo X com o tempo em segundos:
      SET GLOBAL long_query_time = X;

    • Por padrão, o arquivo de log de consulta lenta está localizado em /var/lib/mysql/hostname-slow.log . Para alterar o caminho do log ou o nome do arquivo, digite o seguinte comando, substituindo caminho com o caminho para o arquivo e nome do arquivo com o nome do arquivo de log:

      SET GLOBAL slow_query_log_file = '/path/filename';

  6. Para verificar se o log de consultas lentas está funcionando corretamente, efetue logout do mysql programa e, em seguida, efetue login novamente. (Isso recarrega as variáveis ​​de sessão para o mysql programa.) Digite o seguinte comando, substituindo X com um valor maior que o long_query_time contexto:

    SELECT SLEEP(X);

    O arquivo de log de consulta lenta deve conter informações sobre a consulta.
  7. Continue monitorando o arquivo de log de consultas lentas para ver quais consultas demoram muito para serem executadas.

  8. Quando terminar de solucionar problemas, desative o log de consulta lenta. Para fazer isso, execute o mysql programa novamente e digite o seguinte comando:

    SET GLOBAL slow_query_log = 'OFF';
    Você só deve habilitar o log de consultas lentas enquanto for necessário para solucionar problemas de desempenho.

Mais informações


Para obter mais informações sobre o log de consultas lentas do MySQL, visite https://dev.mysql.com/doc/refman/5.5/en/slow-query-log.html.