Fallo constante con base de datos

wonderlur Seguir

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
5 Abr 2009
Mensajes
245
Hola.
Desde ayer noche, tengo un problema practicamente continuo con la base de datos.
En el transcurso de 40 minutos, he recibido via notificacion mail de fallo de base de datos, 260 avisos, quedando la web inoperativa dando el mensaje de fallo con la base de datos.

El mensaje que recibo es este:

Insertar CODE, HTML o PHP:
Database error in vBulletin 3.8.5:

Invalid SQL:

            SELECT thread.*,thread.title AS threadtitle, post.dateline AS postdateline, post.pagetext AS preview, attachment.thumbnail_filesize AS thumbsize, MIN(attachment.attachmentid) AS attachmentid 

            FROM thread as thread
                                LEFT JOIN post AS post
                    ON (post.postid = thread.firstpostid)
                        LEFT JOIN attachment AS attachment
                           ON (attachment.postid = thread.firstpostid AND attachment.extension IN('jpg', 'gif', 'png', 'jpeg', 'bmp')) 
            WHERE open != 10
                AND thread.forumid IN( 76,78,91,92,93,95,94,79,80,97,98,99 )
                AND thread.visible = 1 
                        GROUP BY thread.threadid
            ORDER BY thread.dateline DESC
            LIMIT 4;

MySQL Error   : Table './miusuario_mibasededatos/post' is marked as crashed and should be repaired
Error Number  : 145
Request Date  : Thursday, May 27th 2010 @ 03:51:44 AM
Error Date    : Thursday, May 27th 2010 @ 03:51:45 AM
Script        : http://www.miweb.com/foro/
Referrer      : 
IP Address    : xx.xxx.xx.xx
Username      : No Registrado
Classname     : vB_Database
MySQL Version :
Los mensajes son algo distintos, pero todos coinciden en que la tabla post esta marcada como "rota".

Me voy a admincp, mantenimiento, reparar/optimizar tablas, realizo la tarea de reparar y optimizar y vuelve a funcionar, pero al poquito, vuelve a fallar.

Un saludo.
 

Andrés Durán

Xi
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
23 Abr 2009
Mensajes
4.371
Hola gnrx.

El error que experimentas puede deberse a una de varias razones (por ser recurrente).

* Uno de los archivos de vBulletin existentes en tu servidor te está generando el conflicto. Ejecuta el diagnóstico "Revisar Versión de Archivos" en:

AdminCP -> Mantenimiento -> Diagnósticos

Vuelve a subir vía FTP, en formato ASCII cada archivo que no esté etiquetado con tu versión de vBulletin, o que "tenga un contenido inesperado".

* Tienes un add-on instalado que lee archivos adjuntos desde la base de datos y éste genera conflicto (por alguna razón) con el desplegado de páginas del foro (FORUMHOME, SHOWTHREAD, etc.). Inhabilita temporalmente el sistema de plugins desde:

AdminCP -> Opciones de vBulletin -> Sistema de Plugin/Hook

Si el problema se resuelve, vuelve a activar esa opción e inhabilita uno a uno todos los add-ons que tengas instalados en el foro, hasta que des con el que te genera conflicto.

* Existe algún plugin instalado dos veces. Para verificar si ésta es la razón que genera el problema, dirígete a:

AdminCP -> Plugins y Productos -> Administrar Plugins

Verifica que cada uno de los plugins instalados exista solamente una vez.

Si tienes oportunidad, por favor adjuntas en este tema cualquier otro error MySQL similar a ese, para tratar de diagnosticar mejor el problema.

Saludos.
 

wonderlur

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
5 Abr 2009
Mensajes
245
Hola.
Gracias por tu respuesta.

Tras realizar las pruebas, estos son los resultados:

No vi archivos de vBulletin existentes en el servidor que esten generando el conflicto.
Si bien es cierto que mostraba algunos como "El archivo no se identificó como parte de vBulletin" (eran de pluggins o de vBAdvanced) no habia ninguno con "Contenido inesperado".

* Tienes un add-on instalado que lee archivos adjuntos desde la base de datos y éste genera conflicto (por alguna razón) con el desplegado de páginas del foro (FORUMHOME, SHOWTHREAD, etc.).
Todos los adjuntos los tengo en el sistema de archivos, no en base de datos, por lo que no sabria saber cual de ellos es.

* Existe algún plugin instalado dos veces. Para verificar si ésta es la razón que genera el problema, dirígete a:
Aunque a cada pluggin, le aparecen varias lineas, ninguna parece repetida (con mismo nombre).

Si tienes oportunidad, por favor adjuntas en este tema cualquier otro error MySQL similar a ese, para tratar de diagnosticar mejor el problema.
Si, aqui van varios, el primero que pongo, me viene sucediendo desde hace una o dos horas, intermitentemente:
Insertar CODE, HTML o PHP:
Database error in vBulletin :

mysql_connect() [<a href='function.mysql-connect'>function.mysql-connect</a>]: Too many connections
/home/miusuario/public_html/foro/includes/class_core.php on line 311

MySQL Error   : 
Error Number  : 
Request Date  : Friday, May 28th 2010 @ 12:03:36 PM
Error Date    : Friday, May 28th 2010 @ 12:03:36 PM
Script        : http://www.miforo.com/foro/downloads.php?do=cat&id=1
Referrer      : http://www.miforo.com/foro/downloads.php
IP Address    : xx.xxx.xx.xx
Username      : 
Classname     : vB_Database
MySQL Version :
No tengo mas usuarios conectados que en cualquier otra hora.

Otros mensajes de error que he recibido en las ultimas horas:
Insertar CODE, HTML o PHP:
Database error in vBulletin 3.8.5:

Invalid SQL:

                SELECT COUNT(*) AS count
                FROM post AS post
                LEFT JOIN threadread AS threadread ON (threadread.threadid = post.threadid AND threadread.userid = 3)
                WHERE dateline >= 1274919526 AND dateline > IF(threadread.readtime IS NULL, 1274087429, threadread.readtime)
                    AND visible = 1;

MySQL Error   : Table './midatabase/post' is marked as crashed and should be repaired
Error Number  : 145
Request Date  : Thursday, May 27th 2010 @ 04:10:29 AM
Error Date    : Thursday, May 27th 2010 @ 04:10:29 AM
Script        : http://www.miforo.com/
Referrer      : http://www.miforo.com/foro/private.php?folderid=0
IP Address    : xx.xxx.xxx
Username      : xxxx
Classname     : vB_Database
MySQL Version : 5.1.30
Insertar CODE, HTML o PHP:
Database error in vBulletin 3.8.5:

Invalid SQL:

            SELECT post.postid
            FROM post AS post
            
            WHERE post.threadid = 22248
                AND post.visible = 1
                
                
            ORDER BY post.dateline 
            LIMIT 0, 15;

MySQL Error   : Table './midatabase/post' is marked as crashed and should be repaired
Error Number  : 145
Request Date  : Thursday, May 27th 2010 @ 04:10:48 AM
Error Date    : Thursday, May 27th 2010 @ 04:10:50 AM
Script        : http://www.miforo.com/foro/showthread.php?t=22248
Referrer      : 
IP Address    : xxx.xxx.xxx.xxx
Username      : No Registrado
Classname     : vB_Database
MySQL Version :
 

Andrés Durán

Xi
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
23 Abr 2009
Mensajes
4.371
El error "Too many connections" indica que el servidor está recibiendo muchas conexiones a la vez, más de las especificadas en la variable max_connections. Si alojas tu foro en un servidor compartido, no necesariamente esas conexiones provienen de tu cuenta, pueden venir de cualquier otra página alojada en el servidor.

Es posible que te funcione vaciar la tabla session para resolver el problema. Ejecuta la siguiente consulta SQL en el Panel de Administración, o en phpMyAdmin:

Insertar CODE, HTML o PHP:
TRUNCATE TABLE session

¿Qué mensaje visualizas cuando la tabla post se termina de reparar?. Para reparar una tabla exitosamente se recomienda reiniciar MySQL y ejecutar la reparación vía phpMyAdmin teniendo el foro cerrado.
 

wonderlur

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
5 Abr 2009
Mensajes
245
El error de "Too many connections" lo he tenido durante el tiempo mencionado en mi post, pero tal y como vino, se fue, duro unas horas.

He ejecutado la consulta SQL desde el Panel de Administracion, y este es el mensaje de respuesta:
Fila Afectada: 0

Cuando reparo la tabla post, el mensaje que visualizo ahora es este:

post Check Status: OK
Pero en este preciso instante, el foro funciona bien, cuando me falla, me da otros mensajes de error en la reparacion, en cuanto vuelva a suceder, indico aqui el mensaje.
Reparo, y suele repararlo a la segunda o tercera intentona.

Principalmente el fallo viene en la tabla post, quizas lo del "Too many connections" fue algo puntual, pues como comento, me suele suceder el error de la tabla post.

La reparacion de la tabla la hago con el foro cerrado, eso si, lo de reiniciar MySQL no sabria como hacerlo.

Saludos.
 
Arriba