table_cache
é a diretiva de configuração mais útil para alterar. Cada vez que o MySQL acessa uma tabela, ele carrega a tabela no cache. Se você possui um número alto de tabelas, é mais rápido armazená-las em cache.
Dê uma olhada nas variáveis do servidor executando:
show status;
e ter um olhar para a variável open_tables
. Se esse valor for igual ao seu table_cache
valor e opened_tables
continuar subindo, será necessário aumentar o table_cache
valor no seu arquivo de configuração. Você encontrará um equilíbrio experimentando essas variáveis durante os horários de pico. Você deseja configurá-lo para que, nos horários de pico, ocorra uma baixa quantidade opened_tables
mesmo após o servidor ficar parado por um longo período de tempo.
key_buffer_size
também é uma boa variável para experimentar. Essa variável afeta o tamanho do buffer do índice, e aumentar essa variável aumenta a velocidade de manipulação do índice do MySQL. Você pode examinar as variáveis com o show variables;
comando novamente e comparar key_read_requests
com key_reads
. Idealmente, você deseja que a relação entre essas duas variáveis seja a mais baixa possível e pode fazer isso aumentando o tamanho da key_buffer_size
. Se você definir essa variável mais alto, terá menos gravações e leituras diretamente de e para o disco, que era sua principal preocupação.
show status;
ver variáveis de status comoOpen_tables
eOpened_tables
.table_cache
parece ter sido removido nas versões recentes do MySQL.