Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Failed :1203- User mysql already has more than "max_user_connections"

Estas en el tema de Failed :1203- User mysql already has more than "max_user_connections" en el foro de Mysql en Foros del Web. Hola Masters, esta mañana en un sistema que tengo (php+mysql) me sucediò algo que nunca habia sucedido. Al intentar conectarme via mysql front a la ...
  #1 (permalink)  
Antiguo 29/09/2009, 10:45
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Failed :1203- User mysql already has more than "max_user_connections"

Hola Masters, esta mañana en un sistema que tengo (php+mysql) me sucediò algo que nunca habia sucedido.

Al intentar conectarme via mysql front a la BD del host me salia esto :



Y el sistema estaba muerto, al intentar mostrar la informaciòn en las paginas se quedaba cargando eternamente.

Pedì la asistencia del hosting y lo solucionaron y me contestaron esto, no lo transcribo para no alterar su significado quizàs y que me den sus opiniones.


Código PHP:
I took a look at this issue, and it appears that there were 35 
concurrent connections to the MySQL database
We limit the number 
of concurrent connections to 35. This means that when you tried to 
connect with MySQL Front
the server was unable to establish an 
additional connection
This is a fairly common error, and usually indicates 
that database connections in your website code are not being correctly closed 
when the script is done with them
I have cleared these extra connections
and 
you should be able to login now
If 
you have any questions please let me know
Como puedo controlar esto de las conexiones ? cual es el criterio ? 1 usuario que entre crea una conexiòn como tal ?

La conexion a my BD es algo como :

Código PHP:
$hostname_sistema "77.22.XX.XX";
$database_sistema "db_sistema";
$username_sistema "user_sistema";
$password_sistema "XXXXXXXXX";
$sistema mysql_pconnect($hostname_sistema$username_sistema
$password_sistema) or trigger_error(mysql_error(),E_USER_ERROR); 
Que me aconsejan ? Como puedo resolver esto ?

Muchas Gracias por sus valiosos comentarios.
__________________
EL LIMITE ES EL UNIVERSO
  #2 (permalink)  
Antiguo 29/09/2009, 11:18
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Failed :1203- User mysql already has more than "max_user_connections"

1. Trata de usar una sola conexión por sesión. No las cierres y las abras todo el tiempo porque Windows tarda varios minutos en limpiar el spool de conexiones, con lo que se satura en poco tiempo.
2. Trata de que te den permisos con un max_user_connections elevado, para evitar problemas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 29/09/2009, 11:24
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 4 meses
Puntos: 4
Respuesta: Failed :1203- User mysql already has more than "max_user_connections"

Hola gnzsoloyo gracias por responder,

Varias cosas :

1. Aclaro que es un hosting bajo Linux.

2. Es 35 un numero bajo de conexiones activas ?

3. Conceptualmente cuando se abre y se cierra la conexion ? me explico yo logue y creo sesion de mis usuarios y luego ellos navegan en las paginas................es 1 usuario = 1 Conexion ?

4. En cada pagina hay consultas (todas al estilo Dreamweaver), las cuales cierro con mysql_free_result($Recordset1);

Donde optimizo ? Conceptualmente estoy haciendo algo mal ?


Gracias de nuevo.
__________________
EL LIMITE ES EL UNIVERSO
  #4 (permalink)  
Antiguo 29/09/2009, 13:40
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Failed :1203- User mysql already has more than "max_user_connections"

Cita:
Aclaro que es un hosting bajo Linux.
Ese es el host. ¿La aplicación corre en el host o corre en las PCs? Es decir, si la conexión se abre desde una página web, entonces cada instancia de la página crea una conexión, a menos que esté muy equivocado...

Cita:
yo logue y creo sesion de mis usuarios y luego ellos navegan en las paginas
¿Hay usuarios que se "cuelgan" a tu conexión? Eso significaría que ¿hay más de un usuario usando la misma conexión?
Me parece como mínimo raro y en general poco eficiente, con riesgo de saturar la conexión de peticiones (y tener problemas de concurrencia).
Cita:
En cada pagina hay consultas (todas al estilo Dreamweaver), las cuales cierro con mysql_free_result
Hay documentación que dice que Dreamweaver usa mysql_pconnect, función que suele traer dolores de cabeza de este tipo. Prueba a cambiar mysql_pconnect() por mysql_connect().
de todos modos, se supone que mysql_free_result debería liberar el pool de conexiones, pero habría que establecer si el tiempo es suficiente,.
Además de eso, hay que ver qué estás usando para acceder al PHP. Si l servidor de PHP está siendo usando con valores por default, estos suelen tener preseteado max_user_connections = 1, e incluso max_connections = 1; con lo que habría que revisar esa configuración.
También sería buena idea revisar el my.cnf, para ver los presets del server.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
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 12:24.