Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jesse Cota

[Resolvido] Erro: Too many connections

Recommended Posts

Salve amigos do iMasters,

 

Hoje me deparei com um erro impertinente no meu código php. Desenvolvi um blog para aprendizado e as vezes quando clico nos meus posts ocorre o erro "Too many connections".

 

Já executei o comando SHOW PROCESSLIST no phpmyadmin e só aparece um processo nada mais.

 

Alguém sabe o que pode está acontencendo? Já revisei meu código, utilizei o mysql_close($conexao) depois de todas conexões que efetuei com o banco.

 

Teoricamente deveria aceitar 100 conexões... tá muito estranho.

 

Quem quiser testar o acesso para conferir o site é www.cotech.com.br

 

 

Algumas informações relevantes:

 

Hospedagem: Hosting Machine

MySQL

# Servidor: Localhost via UNIX socket

# Versão do Servidor: 5.0.87-community

# Versão do Protocolo: 10

máx. de conexões concorrentes 101

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

as vezes quando clico nos meus posts ocorre o erro "Too many connections".

Você está utilizando mysql_pconnect para estabelecer a conexão ?

 

Se a resposta for positiva veja os dois links abaixo:

 

http://br2.php.net/m...connections.php

http://br2.php.net/m...ql-pconnect.php

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela atenção João.

 

Estou utilzando o mysql_connect não conhecia o mysql_pconnect. É recomendado utilizar o mysql_pconnect? Vou dar uma lida nos links que me enviou.

 

Segue o meu código.

 

conexao.php

<?php

	include ("config.php");

	$conexao  = mysql_connect($servidor, $usuario , $senha); 

	if (!$conexao) {
	    die('Não foi possível conectar ao banco: ' . mysql_error());
	}

	$db_selected = mysql_select_db($banco,$conexao);
	if (!$db_selected) {
	    die ("Não foi possível usar o banco '$banco' : " . mysql_error());
	}

?>

config.php

<?php

$servidor= "localhost";
$usuario="xxx";
$senha="xxx";
$banco="blog";

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

É recomendado utilizar o mysql_pconnect? Vou dar uma lida nos links que me enviou.

 

Eu não disse que era recomendado, apenas que o erro apresentado muitas vezes é característico de conexões persistentes.

 

Você está abrindo a conexão corretamente, mas você está fechando-as ?

 

Veja também que você deve utilizar uma única conexão durante todo o ciclo da aplicação, se você tiver 20 processos que utilizam uma conexão com banco de dados e nesses 20 você incluir o conexao.php, você terá 20 conexões por requisição o que significa que com 5 requisições simultâneas você estoura o seu limite.

 

Procure por Registry ou por Singleton para que você utilize a mesma (e única) conexão por toda a aplicação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

É recomendado utilizar o mysql_pconnect? Vou dar uma lida nos links que me enviou.

 

Eu não disse que era recomendado, apenas que o erro apresentado muitas vezes é característico de conexões persistentes.

 

Você está abrindo a conexão corretamente, mas você está fechando-as ?

 

 

Ah tá, achei que seria melhor para esse tipo de aplicação.

 

Sim estou fechando as conexões, utilizando o comando mysql_close($conexao). Está correto?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que agora resolveu, o servidor de hospedagem reiniciou o serviço MySQL. Aparentemente não ocorreu mais o erro... Provavelmente era alguma "sujeira" no meu código.

 

Valeu João..

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.