Para melhorar a performance do MySQL

Publicado por Perfil removido em 09/06/2005

[ Hits: 38.453 ]

 


Para melhorar a performance do MySQL



Eu fiz o seguinte para melhorar a performance do MySQL.

Editei o arquivo my.cnf:

# vi /etc/mysql/my.cnf

Adicionei estas linhas logo após a entrada [mysqld]:

set-variable = max_connections=1000
set-variable = max_connect_errors=1000
set-variable = wait_timeout=300

Significado das variáveis:
  • wait_timeout = tempo máximo em segundos que o servidor aguarda antes de fechar uma conexão sem atividade.
  • max_connect_errors = If there are more than this number of interrupted connections from a host, that host is blocked from further connections. You can unblock blocked hosts with the FLUSH HOSTS statement.
  • max_connections = The number of simultaneous client connections allowed. Increasing this value increases the number of file descriptors that mysqld requires. See section 7.4.8 How MySQL Opens and Closes Tables for comments on file descriptor limits. Also see section A.2.6 Too many connections.

Reiniciei o MySQL:

# /etc/init.d/mysql reload

Outras dicas deste autor

Gnomenu - menu estiloso para o Gnome

Instalando imagem de fundo no grub 2

O que é e como declarar variável no Gambas3 [vídeo]

Placa de vídeo Intel i915 no BackTrack - Conflito resolvido

Programando no Ubuntu - aplicações gráficas em C++ com Eclipse e Glade

Leitura recomendada

XAMPP para Ubuntu 10

SELECT data = hoje/ontem/anteontem no MySQL

Recuperando a senha de root do MySQL

Instalando MariaDB-5.2 no Debian Squeeze

Melhorando saída de resultados do MySQL via terminal

  

Comentários
[1] Comentário enviado por cginet em 10/06/2005 - 00:34h

Eu ja curto a conf diferente.
wait_timeout = 360
max_connections = 500
max_connect_errors = 250

Vamos ao porque:
Muito programador costuma utilizar conexões permanentes e acabam esquecendo de fechar. Ou seja com 10 usuários abrindo uma rotina 10 vezes são 100 conexões, que seriam abertas apenas por alguns instantes. Eu matando esta conexões, tenho mais flexibilidade em configurar o numero máximo de conexões, uma vez que não terei tantas conexões abertas, assim estarei economizando recursos do servidor.
O max_connect_errors, coloquei 250, pois antes de algum desocupado querendo testar o server heauhae, ou dar um loop matando a conexão. Daria o famoso "...is blocked because of many connection errors". Mas para evitar problemas, com a mensagem, é só dar um flush-hosts de vez em quando.
Mas como falei, eu gosto desta forma, pois supre a minha necessidade, mas se vc só for desenvolver com sua base de dados, realmente a configuração citada seria melhor...

[2] Comentário enviado por gabrielfrc em 23/06/2011 - 18:16h

Você tambem pode melhorar a performance de consultas mantendo-as em cache:

http://mascote.me/2011/06/21/melhorar-a-performance-do-mysql-com-query-cache/



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts