MYSQLD consumindo muita memória - Solução

Aviso importante!

Eu sei que você não quer ver propagandas, porém o conteúdo gratuito só está aqui graças a publicidade. Considere desativar o AdBlock para esse site.

Se você usa um servidor local de banco de dados, possivelmente tem esse problema e talvez nem tenha percebido. Na verdade eu também não tinha notado essa "anomalia", mas hoje, conversando com um colega desenvolvedor, ele relatou que seu notebook estava com um consumo excessivo de memória e não sabia o motivo.

Orientei que ele usasse o gerenciador de tarefas do Windows e listasse os processos por ordem de consumo de recursos, no caso memória. Foi quando ele disse que o processo que mais estava consumindo RAM da máquina era o MYSQLD.exe, processo do banco de dados MySQL.

mysqld 1

Com algumas pesquisas, descobri que o problema esta no tamanho dos buffers e caches que o servidor usa como padrão em sua configuração. E não demorou muito para encontrar também uma solução para o problema.

O primeiro passo é abrir o arquivo de configuração chamado MY.INI (pesquise esse nome dentro da pasta de instalação do seu servidor para facilitar). Caso queira acessar manualmente, procure em BIN > MYSQL > MYSQLX.X.X (onde X é a versão instalada).

Abra o arquivo MY.INI e procure uma seção chamada [mysqld]. Agora adicione a seguinte linha no final dessa seção: table_definition_cache=400

mysqld 2

 

Salve o arquivo e reinicie o serviço do banco de dados ou o servidor. Entre novamente no gerenciador e confira o resultado, possivelmente o consumo agora irá ficar abaixo de 100 MB, bem melhor que os mais de 400 de antes.

Espero ter ajudado.

Sobre o autor

Ricardo Bernardi

Sou técnico em hardware e desenvolvedor web, e sobre estes dois assuntos comecei a compartilhar aulas e artigos, tornando-me blogueiro em 2008. Em 2010 esse hobby virou profissão, e desde então tenho buscado melhorar e profissionalizar cada vez mais os projetos que mantenho na web.

Comentários

Atualmente temos 5 comentários para este post. Participe você também, clique aqui e comente sobre o assunto.

  • Thiago comentou em

    Bom dia!
    Ótimo artigo !

    Mas no meu caso não deu certo... estou a desenvolver um sistema web , e o processo do navegador que eu uso para testar o sistema php+mysql

    começa aumentar cada vez mais o consumo de memoria, as vezes chegando a ficar 3GB em um processo!

    às vezes também o uso da cpu vai a 100% em alguns instantes.

    o que pode ser ? Conexão com Banco aberta? varias conexões com o mesmo?

    Obrigado !

    Responder
  • Lauro Cézzar comentou em

    Sou inscrito no seu canal do youtube...e pra variar você é fera no assunto...Resolvo muitos problemas do dia-a-dia com suas dicas. Obrigado!

    Responder
  • Bruno Mendes comentou em

    Boa tarde, Ricardo gostaria de saber se essa sua solução tem algum efeito colateral, se gera alguma perda de desempenho ou coisas do tipo.

    Muito obrigado

    Responder

Deixe seu comentário