Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Erro MySQL Muitas conexões


Os provedores de hospedagem compartilhada geralmente permitem uma quantidade muito pequena de conexões simultâneas para o mesmo usuário.

O que seu código faz é:
  • abra uma conexão com o servidor MySQL
  • faça suas coisas (gerando a página)
  • feche a conexão no final da página.

A última etapa, quando feita no final da página, não é obrigatória :(citando mysql_close do manual):

Mas observe que você provavelmente não deve usar conexões persistentes de qualquer maneira ...

Duas dicas:
  • use mysql_connect em vez de mysql_pconnect (já está ok para você)
  • Defina o quarto parâmetro de mysql_connect como false (já está OK para você, pois é o valor padrão) :(citando o manual):




O que poderia causar o problema, então?

Talvez você esteja tentando acessar várias páginas em paralelo (usando várias abas em seu navegador, por exemplo) , que irá simular vários usuários usando o site ao mesmo tempo ?

Se você tiver muitos usuários usando o site ao mesmo tempo e o código entre mysql_connect e o fechamento da conexão leva muito tempo, significa que muitas conexões serão abertas ao mesmo tempo... E você chegará ao limite :-(

Ainda assim, como você é o único usuário do aplicativo, considerando que você tem até 200 conexões simultâneas permitidas, algo estranho está acontecendo...




Bem, pensando em "conexões demais " e "max_connections "...

Se bem me lembro, max_connections não limita o número de conexões você pode abrir no servidor MySQL, mas o número total de conexões que pode ser aberto nesse servidor, por qualquer pessoa que se conecte a ele .

Citando a documentação do MySQL sobre Muitas conexões :

Então, na verdade, o problema pode não vir de você nem do seu código (que parece bom, na verdade) :pode ser "apenas" que você não seja o único tentando se conectar a esse servidor MySQL (lembre-se, "hospedagem compartilhada") , e que há muitas pessoas usando ao mesmo tempo ...

... E se eu estiver certo e for isso , não há nada que você possa fazer para resolver o problema:contanto que haja muitos bancos de dados / usuários nesse servidor e que max_connection está definido para 200, você continuará sofrendo...


Como uma nota lateral:antes de voltar ao GoDaddy perguntando a eles sobre isso, seria bom se alguém pudesse validar o que acabei de dizer ^^