Aumentar o tamanho do conjunto de buffers InnoDB

9

Estou com dificuldades para definir o tamanho do buffer pool e o tamanho do arquivo de log do MySql InnoDB. Eu estou longe de ser um especialista em MySql, mas tenho lido ao redor e parece que para mudar isso eu apenas adiciono essas linhas ao meu /etc/mysql/my.cnf

# Set buffer pool size to 50-80% of your computer's memory
innodb_buffer_pool_size=2048M
innodb_additional_mem_pool_size=512M
#
# Set the log file size to about 25% of the buffer pool size
innodb_log_file_size=256M
innodb_log_buffer_size=128M

O servidor tem cerca de 7 GB de memória e também está executando um servidor web, então acho que esses números devem ser um bom ponto de partida. Depois de salvar e reiniciar o servidor, no entanto, não parece que as alterações tenham entrado em vigor. Eu tentei executar Mysqltuner que relatou que o buffer pool ainda está em 16.0M. Alguma ideia do que estou fazendo errado? Deixe-me saber se você gostaria de ver mais do arquivo de configuração. Obrigado!

    
por tgrosinger 10.03.2012 / 02:14

4 respostas

5

Verifique se essas linhas estão na seção [mysqld] , ou seja, depois de [mysqld] , mas antes de qualquer outro [section] , como [mysqldump] .

    
por 10.03.2012 / 03:28
1

Verifique seu log de erro do MySQL para obter informações - provavelmente localizado em /var/lib/mysql - também, este é um sistema de 32 bits com o kernel bigmem? Se assim for, você não pode endereçar mais do que 2GB para o MySQL.

Além disso, você vai querer confirmar a partir do próprio MySQL sobre o tamanho do buffer pool - 16MB soa um pouco fora, considerando que o padrão é 128M. Você pode confirmar isso digitando 'SHOW VARIABLES LIKE' innodb_buffer_pool_size 'em uma sessão do MySQL para esse servidor. O resultado está em bytes.

    
por 10.03.2012 / 03:42
1

No meu caso, o problema foi innodb_buffer_pool_instances .

Como eu estava reduzindo innodb_buffer_pool_size , ele ficou menos de 1 GB por instância, então acabou arredondando.

Quando também reduzi as instâncias , finalmente alterei o tamanho do conjunto !

    
por 16.08.2017 / 20:50
0

Pode ser que você inicie o mysql com --no-defaults ou (-no-defaults), o que faz com que ele não carregue uma configuração. Há também --defaults-file (ou -default-file, not sure), que faz com que ele carregue uma configuração específica. Além disso, verifique se isso é para uma configuração diferente daquela que você edita.

Você pode tentar começar com:

--innodb_buffer_pool_size=2048M --innodb_log_buffer_size=512M

Ou chech os parâmetros que você já está começando e veja se um deles faz com que ele omita a configuração.

    
por 10.03.2012 / 02:31

Tags