Ver Mensaje Individual
  #4 (permalink)  
Antiguo 22/02/2006, 07:02
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 4 meses
Puntos: 129
Cita:
El error no se visionarlo. El script php lo ejecuta el servidor cada pocos minutos.
Lo ejecutas bajo un "cron job" (o "programador de tareas")? .. Deberias generar un log de la ejecución de tu script .. Si lo llamas con un "cron job" podrías hacer algo tipo nose.php > log_ejecucon.txt .. así generas la salida que este pueda dar hacia un archivo de texto plano para que lo puedas ver despues.

A su vez .. usa en tus funciones mysql_xxxx() la función mysql_error() para ver el error concreto de SQL o conexión que puedas tener:

Código PHP:
<?
mysql_query
("select * from *****",$link) or die (mysql_error());
(y así con las funciones mysql_connect() .. mysql_select_db() ..)

Cita:
Hay errores justamente los dias que mas usuarios hay recurrentes accediendo a mi base de datos, se dan casos de mala actualizacion de datos en la BBDD.
Tu usas "transacciones"? Tal vez tengas problemas de ese tipo, si no bloqueas tus registros/tablas a la hora de hacer cierto tipo de operaciones puede ser que los datos entren descordinados .. Para solventar ese problema se usan "transacciones" donde vía SQL se indica "aquí empieza mi proceso.. bloquea todo por esos instantes" .. haces tu proceso y .. "desbloquea todo" o si hay un error: vuelve atras el proceso. (en SQL sería usar: BEGIN, COMMIT y ROLLBACK ) .. a ser posible con tablas "transaccionales" tipo InnodB.

Un tutorial al respecto:
http://www.mysql-hispano.org/page.php?id=26

Cita:
Tal ver seria una facil solución, utilizar un usuario diferente de conexion para el script que se ejecuta cada pocos minutos y el otro usuario de conexion para el que crean los usuarios para hacer consultas de la base de datos?
Separando así esos procesos tendrías control del proceso en sí ... cosas como "matar" uno u otro proceso si hay problemas (a veces pasa .. si usas un sólo usuario para todo como es lo común ... matas "toda" la aplicación .. cuando en tu caso por ejemplo tienes dos procesos bien separados). Esto igualmente si tienes un problema a nivel de "transacciones" no te solventará el problema.


Un saludo,