A ativação de “log_queries_not_using_indexes” desativa “long_query_time”?

13

Notei que, em Mysql, ao habilitar log_queries_not_using_indexes, slow_query_loge long_query_time, o arquivo de log de consultas lentas gerado irá conter uma grande quantidade de consultas, mesmo que o tempo de consulta é muito menos do que long_query_time.

Parece que uma vez log_queries_not_using_indexesativado, o Mysql registrará todas as consultas que não usem índices, independentemente do "long_query_time".

Existe uma maneira de superar isso? Quero dizer, existe uma maneira de registrar todas as consultas que demoram mais tempo do que long_query_time, independentemente de estarem usando índices?

coolcfan
fonte

Respostas:

27

Esse é o comportamento esperado. Consulte os documentos on-line, mas em resumo:

  • long_query_timeé o limite para o tempo de execução da consulta além do qual é registrado. Todas as consultas que demoram mais que o limite são registradas, independentemente de usarem ou não um índice.

  • log_queries_not_using_indexesdiz ao MySQL para registrar adicionalmente todas as consultas que não usam um índice para limitar o número de linhas verificadas. O logon nessa condição acontece independentemente do tempo de execução.

Espero que ajude a explicar o que você está vendo. Parece que você provavelmente só quer long_query_timee não log_queries_not_using_indexes se seu objetivo é capturar apenas consultas que demoram mais que um limite específico.

Links do documento: http://dev.mysql.com/doc/refman/5.5/en/server-options.html#option_mysqld_log-queries-not-using-indexes

http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_long_query_time

drogart
fonte
5
O MySQL deve permitir registrar cada um desses dois tipos de consultas em seu próprio arquivo. Eu inventei uma técnica para encontrar as linhas em que o tempo de consulta está listado, o que facilita a verificação visual de consultas lentas, mas seria melhor ter arquivos separados.
Coruja-da-noite
o que isso significa quando mencionamos particularmente aqui: "O logon nessa condição acontece independentemente do tempo de execução". ?
precisa saber é o seguinte
@ user10089632 leia o documento no primeiro link acima.
Dez18