Foros del Web » Programando para Internet » PHP »

Error en mysql_pconnect()

Estas en el tema de Error en mysql_pconnect() en el foro de PHP en Foros del Web. Hola a todos, tengo el siguiente error y no entiendo pq, ya q estaba funcionando muy bien. Les explico: Me sale el siguiente error: Warning ...
  #1 (permalink)  
Antiguo 28/10/2005, 05:07
hmv
 
Fecha de Ingreso: abril-2005
Mensajes: 311
Antigüedad: 12 años, 8 meses
Puntos: 0
Busqueda Error en mysql_pconnect()

Hola a todos, tengo el siguiente error y no entiendo pq, ya q estaba funcionando muy bien. Les explico:

Me sale el siguiente error:

Warning: mysql_pconnect(): Too many connections in /home/xxxxxx/public_html/yyyyyy/en/Connections/bcn_conn.php on line 7
Too many connections

Código PHP:
$host "localhost";
$db "myBD";
$user "myuser";
$pwd "123456";

$bcn_conn mysql_pconnect($host$user$pwd) or die(mysql_error());   // esta es la linea 7 error con mysql_pconnect()
//la conection a la BD lo hago en cada pagina. 
A caso será pq no cierro las conecciones con mysql_close();
La solución q encontre fue cambiar mysql_pconnect() por mysql_connect(), pues encontre un ejemplo por alli y ahora si funciona bien.

Cual es la diferencia entre uno y otro, y cual es mejor

muchas gracias por sus respuestas.
  #2 (permalink)  
Antiguo 28/10/2005, 07:19
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
No .. las conexiones persistentes no se cierran .. pero si que hay un límite en las que puede hacerse simultáneamente.

Las conexiones NO persistentes .. automáticamente PHP las cierra aunque tu no uses un mysql_close() en tus scripts al finalizar la ejecución de tu script.

Las conexiones persistentes tienen un tiempo de vida (que lo define si mal no recuerdo la configuración de Mysql en su my.ini o my.cfg) máximo por defecto, no se cierran las conexiones pese que tu script termine.

Las diferencias principales de una conexión permanente o no son principalmente el tiempo que te ahoras en una conexión Persistente en el proceso de "autentificación" contra tu BD .. en este caso ese proceso se hace una vez (la primera) y mientras "viva" esa conexión se identifica el cliente que la originó y se continua usando dicha conexión con tu BD. En una conexión NO persistente .. esa "autentificación" se hace siempre .. con cada "mysql_connect()" que hagas para todos tus scripts que lo usen .. pues como ya te he comentado al terminar la ejecución de tu script se cierra la conexión.

El usar conexiones "persistentes" no te evita tener que usar mysql_pconnect() en todos tus scripts, es Mysql el que se encarga de decidir si continua con un "socket" abierto (conexión .. por ID de recurso) o tiene que reconectarse (por qué expiró la conexión .. o se cerró por cualquier otra razón).

Un saludo,
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 13:43.