De que se trata o artigo:

Este artigo descreve conceitualmente alguns parâmetros de configuração do Sistema Gerenciador de Bancos de Dados (SGBD) MySQL. Os parâmetros permitem ajustes, que visam adequar o servidor para as necessidades presentes em cada situação. O artigo busca redução do tempo necessário para atender requisições de inserção e consultas realizadas por usuários no banco de dados. Desta forma as inserções e consultas foram realizadas e os tempos necessários para a execução das mesmas foram registrados. Com base na conceituação apresentada é iniciado um ajuste visando redução do tempo necessário para execução das inserções e consultas. Em seguida são feitos comparativos entre os resultados encontrados.

Em que situação o tema útil:

O presente artigo visa facilitar a implementação de tuning no MySQL, ou seja, ajustar o servidor para obter melhores resultados com relação aos tempos de processamento das inserções e consultas enviadas ao servidor pelos usuários. O artigo também é útil para compreender as funcionalidades de alguns parâmetros de configuração do servidor de banco de dados MySQL.

Resumo DevMan

Neste artigo serão apresentados conceitos sobre os parâmetros de configuração do banco de dados MySQL. Visando utilizar os conceitos de forma prática é iniciada a implementação manual de tuning. O tuning proposto visa a redução do tempo necessário para realização de inserções e consultas feitas no servidor MySQL. A versão adotada do MySQL foi a distribuição 5.1.49-3. O sistema operacional adotado foi o Linux Debian 2.6.32-5-686 (32 bits). Os testes foram cronometrados utilizando um sistema desenvolvido na linguagem Java, onde as operações de inserção são realizadas em uma thread.

Atualmente as instituições, empresas e organizações estão cada vez mais dependentes dos sistemas de informação para gerenciar e manter os seus negócios em operação e atingir as metas estabelecidas. Neste contexto, devido à alta dependência em relação a todos os componentes de software que sustentam o sistema como um todo, qualquer falha ou indisponibilidade, ou até mesmo problemas de desempenho em qualquer destes elementos pode culminar em grandes prejuízos para estas corporações.

Ao configurar um servidor de banco de dados, os desenvolvedores sempre se deparam com a necessidade de disponibilizar o serviço da melhor forma possível. Para isso é necessário ajustar o servidor de acordo com as necessidades e usos do sistema em questão. Os ajustes possibilitam melhor aproveitamento do hardware, e devem otimizar o servidor, para realização das tarefas que demandam mais processamento ou que tratam de maior volume de dados.

Saber escolher a melhor alternativa para cada situação ou pelo menos a alternativa mais razoável dentre várias é um dos requisitos mais importantes e desejáveis para os profissionais que lidam com tecnologia e sistemas, especialmente bancos de dados e sistemas de missão crítica para a empresa. São vários os benefícios que se obtém ao adquirir esta habilidade incluindo a confiança da gerência, o conhecimento técnico avançado, facilidade para obtenção de recursos e também a autonomia para a realização do trabalho sem supervisão constante.

Quando o assunto é banco de dados, os ajustes devem ser feitos, levando-se em consideração que o servidor deve atender aos seus princípios básicos, definidos pela sigla ACID, que significa:

  • Atomicidade = Trata o trabalho como parte indivisível (atômico). A transação deve ter todas as suas operações executadas em caso de sucesso ou nenhum resultado de alguma operação refletido sobre a base de dados em caso de falha. Ou seja, após o término de uma transação (commit ou abort), a base de dados não deve refletir resultados parciais da transação. Por exemplo:
    • Ou todo o trabalho é feito, ou nada é feito.
    • Em uma transferência de valores entre contas bancárias, é necessário que, da conta origem seja retirado um valor X e na conta destino seja somado o mesmo valor X. As duas operações devem ser completadas sem que qualquer erro aconteça, caso contrário todas as alterações feitas nessa operação de transferência devem ser desfeitas;
    • ...
      Quer ler esse conteúdo completo? Seja um assinante e descubra as vantagens.
      • 473 Cursos
      • 10K Artigos
      • 100 DevCasts
      • 30 Projetos
      • 80 Guias
      Tenha acesso completo