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

Desempenho do MySQL - 5 parâmetros do arquivo de configuração

Anteriormente, escrevi uma postagem no blog sobre Desempenho do MySQL – Consulta lenta e innodb_buffer_pool_size . Recebi muitos e-mails onde as pessoas queriam saber mais sobre esses parâmetros. Vamos discutir 5 parâmetros do arquivo de configuração que podem ajudar no desempenho do MySQL.

innodb_buffer_pool_size

No buffer pool, os dados são armazenados em cache. Se for de tamanho pequeno, seu disco será mais usado. Mantenha este grande para evitar que o MySQL vá para o disco repetidamente. O tamanho típico que vejo na casa dos meus clientes é de 6 a 10 GB.

max_connections

Você pode facilmente evitar muitos erros de conexão se mantiver isso grande o suficiente. No entanto, se você mantê-lo muito grande do que o seu servidor pode suportar, você começará a ver problemas de desempenho novamente. É muito importante manter isso grande o suficiente para que ele possa lidar com sua carga de trabalho típica e, portanto, você deve adicionar mais recursos. Muitas vezes eu mudei isso primeiro e depois ajustei os recursos para meus clientes.

query_cache_size

Todo mundo sabe que se você mantiver o tamanho deste conjunto muito baixo ou alto, seu desempenho será terrível. No entanto, tenho visto muitas pessoas ignorando essa configuração. Eu costumo começar a ajustar o MySQL olhando para esta configuração e mantê-la em 0. Isso significa que esta configuração está desabilitada e eu uso outros métodos para ajustar minhas consultas. Eu geralmente prefiro ajustar meus índices sobre esse método.

innodb_flush_method

Esta configuração controla como os dados e os logs são liberados da memória para o disco. Eu costumo mantê-lo O_DIRECT para evitar buffer duplo. Eu experimentei que o buffer duplo geralmente reduz o desempenho do servidor.

As configurações que mencionei acima estão relacionadas ao desempenho do MySQL e podem ser alteradas a partir do arquivo de configuração. Você pode encontrar o arquivo de configuração do MySQL no local aqui no Linux:/etc/mysql/my.conf

No entanto, antes de alterar qualquer configuração na produção, sugiro fortemente que você as experimente em seu sistema de desenvolvimento. É bem possível que sua experiência seja diferente da minha e você precise de um valor diferente para seu servidor.

Se você gostou deste blog, não se esqueça de se inscrever no meu canal do YouTube - SQL in Sixty Seconds .