Existem vários mecanismos disponíveis no Linux para limitar a memória disponível para um processo.
Em sistemas mais novos, você pode usar cgroups e, se disponível, essa é provavelmente a melhor solução. (Use as ferramentas do pacote libcgroup
para classificar automaticamente o daemon mysql em um grupo de controle de memória com memory.limit_in_bytes = 64M;
ou o que for.
Em sistemas mais antigos, se o daemon mysql estiver sendo iniciado por um script, você pode simplesmente usar ulimit
para restringir a memória disponível - coloque uma instrução ulimit -v 65536
no script acima onde o daemon é iniciado. / p>
Dito isto, com software moderno, isso está realmente empurrando o que você pode se safar. Você pode simplesmente precisar de mais memória RAM do que você. Uma opção pode ser mudar para o SQLite ao invés do MySQL - então você não tem um daemon separado rodando.