anúncios

quarta-feira, 28 de novembro de 2018

Resolvendo o problema MySQL Error Too many connections

Problema

Quando um cliente tenta efetuar login no sistema com SGBD MySQL, às vezes ele pode ser rejeitado e receber uma mensagem de erro no log dizendo "MySQL Error: Too many connections". Isso significa que o número máximo de clientes que podem estar conectados ao servidor foi atingido. O cliente terá que esperar que outro cliente faça logoff ou o administrador terá que aumentar o número máximo de conexões permitidas.

Solução

O número máximo de conexões permitidos para o servidor está contido na coluna max_connections. O valor padrão é 151. Para ver o valor para o qual esta variável está definida, execute o seguinte comando SQL.

Logue com usuário root do MySQL

mysql> SHOW VARIABLES LIKE 'max_connections';
+-----------------+-------+
| Variable_name   | Value |
+-----------------+-------+
| max_connections | 151   |
+-----------------+-------+
1 row in set (0.30 sec)

Solução temporária

A solução temporária é fazer o update na coluna max_connections para outro valor acima de 151.

mysql> SET GLOBAL max_connections = 512;
Ao reiniciar o serviço MySQL (mysqld), retornará ao valor default 151.

Solução permanente

A melhor forma de alterar o valor max_connections é editar o arquivo /etc/my.cnf e reiniciar o serviço MySQL (mysqld) para efeito e fixar. Para isso segue o procedimento.

# vim /etc/my.cnf
max_connections = 512


Reiniciar o serviço MySQL/MariaDB

Debian: # systemctl restart mysqld

CentOS: # systemctl restart mysqld

Slackware: # /etc/rc.d/rc.mysqld restart

Referências
https://www.thegeekdiary.com/mysql-error-too-many-connections-and-how-to-resolve-it/

Feito!

3 comentários: