
Estou recebendo um erro de muitas conexões com meu aplicativo da web:http://dev.mysql.com/doc/refman/5.5/en/too-many-connections.html
Portanto, quero me conectar ao banco de dados para show full processes/g
poder depurar o código. Estou usando o seguinte comando CLI:
mysql -h domain.eu-west-1.rds.amazonaws.com -P 3306 -u username -p
O nome de usuário que estou usando é o nome de usuário mestre criado quando iniciei a instância. Entendo que o mysql sempre mantém uma conexão livre para permitir que contas com SUPER privilégios se conectem, no entanto, quando o faço, recebo a resposta de muitos erros.
Olhando para a configuração, o nome de usuário mestre parece ter apenas superprivilégios no banco de dados e não no domínio, correto? De que outra forma posso fazer login no mysql para depurar o servidor?
Responder1
Está correto, o RDS não permite que nenhuma conta tenha o SUPER
privilégio. Esta é uma limitação infeliz no RDS.
Seu problema, porém, parece que poderia ser "consertado" (ou pelo menos resolvido) aumentando max_connect_errors
o grupo de parâmetros RDS para sua instância, o que fará com que o RDS seja mais tolerante aos erros de conexão do seu IP.
Sua pergunta me deixa pensando se você tem muitas conexões... ou muitos erros.
Se houver erros, você pode tentar acessá-lo de um IP diferente, você pode limpar os contadores com FLUSH HOSTS;
.
Definir log_warnings
= 2 no grupo de parâmetros aumentará a quantidade de registro de erros de conexão (o registro de erros está disponível através do console) e issopoderajudá-lo a identificar o que está causando o aumento da contagem de erros do seu host.
As alterações do grupo de parâmetros serão aplicadas "a quente" ao servidor sempre que possível, mas a tela Detalhes da instância, ao lado do grupo de parâmetros, fornecerá uma dica se a aplicação das alterações está pendente, requer uma reinicialização ou está concluída (in- sincronizar).
Se o problema for apenas "muitas conexões", a única solução - se você não puder forçar o aplicativo a interromper algumas conexões - é reinicializar a instância e obter um slot de conexão e permanecer conectado para ter acesso quando o problema retorna.