Ontem postei artigo sobre tuning do banco MySQL usando a ferramenta automatizada mysqltuner.pl.

Após a execução do script achei o laboratório mais “enxuto”… rodando mais “limpo”… mas poderia ser apenas impressão minha e por isso resolvi aguardar 24hrs para poder ver os dados da monitoração e atestar (ou não) a melhoria dos resultados.

Possuo um template de monitoração de performance do disco do laboratório, este template guarda dados sobre utilização do disco, dados como “Disc Rate” e “Disc Latency”.

Observando o gráfico de Disc Rate anterior podemos observar um padrão… a cada hora um pico de gravação e de leitura em disco (o de leitura fica um pouco “mascarado” no gráfico por ser bem menor).

 

disk_rate_sda1_before

O que é este pico ? Será que é o tão atacado housekeeping ? Que, por padrão, é executado a cada hora ?

Como será que ficou este parâmetro 24 horas após ? Vejamos o resultado no gráfico abaixo:

disk_rate_sda1_after

Acho que ficou um pouquinho melhor né ? Existem ainda os picos a cada hora (e sempre terão pois eu não desabilitei o housekeeping) mas eles estão a cerca de 1/3 do que eram antes.

Vamos analisar outro parâmetro: a latência. Afinal a carga de dados atribuída ao meu laboratório poderia ser muito inferior ao limite que o maravilhoso disco SATA de 5400 rotações deveria suportar….

disk_latency_sda1_before

Aí estão novamente… picos de hora em hora… picos muito maiores… relacionados à latência (ou seja… estou aceitando doações de discos com performance superiores… padrão de notebook pois meu laboratório é um mini-ITX 🙂 )

Observem a média de IO e read estava na casa dos 50 milisegundos… e os picos ultrapassam 20x isso. Para o parâmetro de Write é pior ainda… chegando a 25x a média de uso.

No melhor estilo “Jack Bauer” … e 24 horas depois ?

disk_latency_sda1_after

Eita… sumiu… pega ladrão… cadê os picos de latência que estavam aqui ???? Devoooolve…. ops… pode ficar… quero de volta não :-D.

Mas… é claro… os picos sumiram com algum custo… qual ? Memória que estava ociosa e estou utilizando agora… mas… eu não coloquei um gigantesco pente de 1GB de RAM atoa neste ITX… vamos utiliza-lo…

Gráfico de utilização de memória antes do tuning:

memory_free_before

 

E após o tuning ?

memory_free_after

 

Espero ter auxiliado… tentem o procedimento em seu ambiente (fazendo backup antes é obvio…) e me informem dos resultados ?

 

 

 

3 thoughts on “Zabbix – Tuning do MySQL – O dia seguinte

  1. Adail,

    Muito obrigado pela dica do script de tunning, rodei aqui no ambiente e sugeriram algumas mudanças que melhoraram bastante o zabbix.

    Irei sentar com o pessoal DBA aqui para ver as outras sugestoes, já que esse banco vai passar para um cluster dedicado.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *