Até o MySQL 5.6.7, o RPM oficial vinha com estes arquivos:
/usr/share/mysql/my-innodb-heavy-4G.cnf
/usr/share/mysql/my-medium.cnf
/usr/share/mysql/my-huge.cnf
/usr/share/mysql/my-large.cnf
/usr/share/mysql/my-small.cnf
No 5.6.8, esses arquivos se foram e o único que resta é:
/usr/share/mysql/my-default.cnf
Não sou um especialista em ajuste do MySQL e costumava começar sempre com my-innodb-heavy-4G.cnf
. Agora me resta uma única opção de configuração:
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
O ajuste dessa única variável é a chave mágica para a maioria das otimizações ou existem outros parâmetros relevantes que devo ajustar ao instalar um novo servidor?
Nesse caso, onde posso encontrar um arquivo equivalente, que conteria padrões sensatos para um servidor MySQL dedicado apenas para InnoDB e 4 GB de RAM?
Você sabe o que eles dizem, sobre "quando tudo mais falhar ..."
Tudo isso é explicado nas Notas de Lançamento do MySQL 5.6.8 .
Sem dúvida,
innodb_buffer_pool_size
é o parâmetro de ajuste mais importante para uma instalação do MySQL.Para "padrões sensatos", comece com os padrões.
Para colocar de outra forma...
-- Schwartz, Barão; Zaitsev, Peter; Tkachenko, Vadim (2012-03-05). MySQL de alto desempenho: otimização, backups e replicação (Kindle Location 12182). OReilly Media - A. Edição Kindle.
É verdade que
innodb_buffer_pool_size
é o parâmetro de ajuste mais importante do MySQL com InnoDB. No entanto, se você quiser ir além, tools.percona.com possui um gerador my.cnf que gerará uma configuração bastante razoável para você.Isenção de responsabilidade: Percona é meu empregador.