Nível do sistema operacional e MySQL

Nível do sistema operacional e MySQL

Acabei de ler que a configuração incorreta de innodb_buffer_pool_size pode causar paginação no nível do sistema operacional. Alguém sabe como isso pode acontecer e como evitar isso? Atualmente estou usando CentOS 4 e MySQL 5.0.41

Responder1

Lugaropção memlockem meu.cnf. No CentOS5 o SELinux estava impedindo o bloqueio do processo mysqld na memória e devo criar meu próprio módulo para habilitar isso.

Outra possibilidade é usarPáginas grandes, que sempre reside na memória. Você deve se lembrar de colocar ulimit -l unlimitedem seu script de inicialização do mysqld

Responder2

Em termos simples, para evitar a paginação, você precisa manter o tamanho do buffer pequeno o suficiente para caber completamente na memória, junto com tudo o mais para o qual o sistema operacional usa a memória. Se os requisitos totais de memória se tornarem maiores que a memória física, ela será trocada. Se você não tiver espaço de troca, algo terá que quebrar.

Responder3

Se você tiver a troca habilitada em sua máquina e tiver buffer pools maiores do que a RAM física, isso fará com que as coisas sejam trocadas para o disco para liberar RAM para seus buffer pools. Evite isso desativando o swap ou certificando-se de que o mysql nunca consumirá RAM física suficiente para ser trocado.

informação relacionada