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
# 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.logA 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.