Foros del Web » Programando para Internet » PHP »

Demasiadas conexiones?

Estas en el tema de Demasiadas conexiones? en el foro de PHP en Foros del Web. Hola, como estamos, os planteo lo siguiente: Ke es este error? como se soluciona?: Warning: mysql_connect(): Too many connections in conexion.php on line 8 gracias...
  #1 (permalink)  
Antiguo 24/05/2004, 12:14
Avatar de frisca  
Fecha de Ingreso: mayo-2004
Ubicación: Murcia
Mensajes: 176
Antigüedad: 19 años, 11 meses
Puntos: 0
Pregunta Demasiadas conexiones?

Hola, como estamos, os planteo lo siguiente:

Ke es este error? como se soluciona?:

Warning: mysql_connect(): Too many connections in conexion.php on line 8

gracias
  #2 (permalink)  
Antiguo 24/05/2004, 12:30
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 9 meses
Puntos: 0
Me pasa lo mismo

Frisca,

Precisamente venía a postear esa misma pregunta:

Warning: mysql_connect(): Too many connections in /home/webcindario/djnelson/cuestionario.php on line 42

en mi caso lo que hago para enviar la consulta es:

$consulta="select ...";

$conexion=mysql_connect($servidor,$usuario,$cont);
$tabla=mysql_select_db($bd,$conexion);
$resultado=mysql_query($consulta,$conexion);

Y no cierro la conexión, ¿Será por eso?

Haber si alguien nos puede echar un cable...

Frisca, tú cierras la conexión?

Saludos.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
  #3 (permalink)  
Antiguo 24/05/2004, 13:43
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
PHP cierra las conexiones a base de datos, sockets abiertos y libera memoria usada por el script al terminar la ejecución del mismo ...

Por lo demás .. "parece" que es el servidor Mysql el que está saturado de conexiones .. no es un problema concreto de sus scripts (y más si no usan conexiones persitentes: xxx_pconnect()sino de su servidor Mysql en sí (pregunten a su soporte si es que dependen de un servicio de Hosting).

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #4 (permalink)  
Antiguo 24/05/2004, 13:47
 
Fecha de Ingreso: julio-2003
Ubicación: España
Mensajes: 723
Antigüedad: 20 años, 9 meses
Puntos: 0
Lo que suponía.

Gracias Cluster.
__________________
Solo nosotros podemos decidir qué hacer con el tiempo que se nos ha dado. (Gandalf)
  #5 (permalink)  
Antiguo 25/05/2004, 03:55
Avatar de frisca  
Fecha de Ingreso: mayo-2004
Ubicación: Murcia
Mensajes: 176
Antigüedad: 19 años, 11 meses
Puntos: 0
Pues va a ser que el servidor Mysql el que está saturado de conexiones, porque me falla solo a veces.
No hay alguna manera de que acepte más conexiones o algo de eso, porque creo que en la web donde lo tengo puesto no entrara mas de una persona, jeje.
Por cierto es:
http://webon.webcindario.com/opiniones

por cierto, soy un principiante, por eso hago esas preguntas tan estupidas.
__________________
Que si contara el tiempo que paso mirando al techo pensando en ella...
  #6 (permalink)  
Antiguo 25/05/2004, 04:20
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

Son conexiones al servidor MySQL. Eso significa que si el hosting gratuito solo tiene un servidor MySQL para todos (o para un grupo de) las paginas alojadas, pues el numero de conexiones se comparten entre todas las paginas alojadas. Puede que tu solo consumas una conexion, pero si el total de conexiones de todos tus vecinos de servidor MySQL satura el servidor, pues te toca aguantarte.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #7 (permalink)  
Antiguo 25/05/2004, 04:29
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Bueno, asi a bote pronto se me ocurre hacer algo como:
Código PHP:
$intentos=0;
while ((
3>$intentos) && !($conexion=@mysql_connect("localhost","pp","pp"))) {
    
$intentos++;
    
sleep(rand(0.5,1.5));
}
if (!
$conexion) {
    echo 
"Sin conexion despues de $intentos intentos";

Lo que hace es intentar crear 3 veces una conexion. Entre intento e intento, se para un tiempo aleatorio entre 0.5 y 1.5 segundos. Asi se intenta dar tiempo a que se libere alguna conexion (aunque puede volver a ser cogida antes de que lo hagas tu).

Puedes jugar con el numero de intentos y los tiempos.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #8 (permalink)  
Antiguo 25/05/2004, 07:24
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
jeje curiosa la solución josemi .. xDD

Para hacerlo más entretenido ..

Código PHP:
$intentos=0;
while ((
3>$intentos) && !($conexion=@mysql_connect("localhost","pp","pp"))) {
    
$intentos++;
    
sleep(rand(0.5,1.5));
    echo 
"Intento nº $intentos por conectar a la BD<br>";
    
flush();
}
if (!
$conexion) {
    echo 
"Sin conexion despues de $intentos intentos<br>";
    echo 
"GAME OVER! xDDDD";

Simplemente se muestra el nº de intentos y con "flush()" se fuerza a que se "envien" inmediatamente dicho dato al cliente (para que vea como va intentado la conexión N veces)

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:32.