GoDaddy Ajuda

Tentamos traduzir esta página para você. A página em inglês também está disponível.

Revise consultas lentas do MySQL

Você habilitou o registro de consulta lenta e agora tem um registro para revisar. Se você não habilitou o registro, você pode encontrar as etapas aqui .

Analisando o registro

Local do registro:
/var/log/slow-queries.log
OBSERVAÇÃO: Se você não encontrar um registro neste local, verifique a entrada em seu my.cnf e se o MySQL foi reiniciado após a alteração.
Formato:
# Hora: 210905 6:33:11 # Usuário @ Host: dbuser [dbname] @ hostname [1.2.3.4] # Query_time: 12.116250 Lock_time: 0,000035 Rows_sent: 0 Rows_examined: 201565 use dbname; SET timestamp = 1409898791; ... SLOW QUERY AQUI ...

O registro pode ser complicado quando você tem dezenas, senão centenas de entradas no formato acima. Para tornar o registro mais legível, use mysqldumpslow para analisar o registro.

mysqldumpslow -r -a /var/log/mysql/mysqld.slow.log
A saída conterá informações importantes como tempo , linhas e consulta .
Contagem: 2 Tempo = 20,54s (41s) Bloqueio = 0,02s (0s) Linhas = 12547802 (0), dbuser [dbuser] @localhost SELECT * FROM db_exp_table WHERE site_user_id = '214380' ORDENAR POR site_id DESC LIMIT 0,2 Contagem: 1 Tempo = 21,74s (21s) Bloqueio = 0,01s (0s) Linhas = 12547802 (0), dbuser [dbuser] @localhost SELECT * FROM db_exp_table WHERE site_user_id = '214380' ORDENAR POR site_id DESC LIMIT 0,2 Contagem: 1 Vez = 23.86s (23s) Lock = 0.20s (0s) Rows = 12547802 (0), dbuser [dbuser] @localhost SELECT * FROM db_exp_table WHERE site_user_id = '214380' ORDEM POR site_id DESC LIMIT 0,2

Olhando para o exemplo acima, temos uma consulta que levou de 20 a 24 segundos para ser executada. Isso causa problemas com seu site, que variam de tempos de carregamento lentos a erros de tempo limite (giro sem fim). A consulta está examinando 12.547.802 linhas. Uma consulta grande (ou seja, select *) executada em uma tabela com mais de 12 milhões de linhas provavelmente resultará em uma experiência do usuário ruim. Otimizar a consulta (ou seja, selecionar "mesas de centro") ou reduzir as linhas examinadas (ou seja, arquivar dados antigos) irá acelerar a consulta.

Se o arquivo de registro for grande, execute mysqldumpslow e salve a saída em um arquivo. Isso tornará mais fácil revisar com outras ferramentas de manipulação de arquivos, como grep ou find .

mysqldumpslow -r -a /var/log/slow-queries.log > slow.log.parsed

Próximas etapas

Após revisar o registro de consultas lentas, você deve ter uma boa ideia das consultas problemáticas que precisam ser corrigidas. Se o seu site ainda estiver lento com o MySQL e usando muitos recursos, pode ser necessário otimizar o MySQL para utilizar melhor os recursos do seu servidor.

Assim que terminar o registro, desabilite o registro de consultas lentas do MySQL . Deixar o registro habilitado drenará recursos do MySQL desnecessariamente e potencialmente preencherá seu disco (com consultas incorretas).

Serviços de hospedagem GoDaddy

Nossos especialistas em servidores podem habilitar / desabilitar o registro de consultas lentas do MySQL e otimizar o MySQL. Para saber mais sobre este serviço, um guia da GoDaddy está aqui para ajudar.

Mais informações

Para saber mais sobre os serviços de hospedagem que a GoDaddy oferece, consulte nossoMenu de serviços de hospedagem .