Para melhorar a performance do MySQL

Publicado por Perfil removido em 09/06/2005

[ Hits: 38.803 ]

 


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

Placas Wireless Ralink - Instalação de Drivers no CentOS 6.x

Driver NVidia no Ubuntu 13.10

Pepper Flash plugin no Ubuntu 16.04 [vídeo]

Cinnamon - Temas direto da página

Avaliando o tunelamento de rede wireless com SSH

Leitura recomendada

MySQL - Alterando a Senha de Root

mySQL-WorkBench no Ubuntu

Backup de banco de dados MySQL com mysqldump

Recuperar senha do root do MySQL

MySQL - Erro: mysqldump: Got error: 1044 [Resolvido]

  

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