Hola a todos,
Gracias por vuestro fantástico foro. Tengo una duda. A que se debe cuando aparece el siguiente error:
jtablesession::Store Failed
DB function failed with error number 1034
Incorrect key file for table 'jos_session'; try to repair it SQL=INSERT INTO `jos_session` ( `session_id`,`time`,`username`,`gid`,`guest`,`client_id` ) VALUES ( '234769a8321e4b31301f9d751fcdad32','1276109684','','0','1','0' )
Muchas gracias.
Javi
Hola, bienvenido al foro Javiparati 🙂
Presupongo que tienes dañada la tabla o los índices, prueba a realizar un backup de toda la base de datos y luego reparar la tabla, desde el phpmyadmin.
La tabla Jos_session solía corromperse en Joomla 1.0.x más fácilmente que en Joomla 1.5.x.
Si ves que reparando la tabla no lo solucionas lo siguiente que probaría sería a vaciar la tabla, dejarás sin sesión a los usuarios actuales pero no creo que te afecte.
No sigo con más opciones posibles porque se haría eterna la respuesta. 😉
Hola Javiparati,
como comenta Lucas, para reparar la tabla ves a phpMyAdmin, selecciona la tabla jos_session en el sidebar de la izquierda, después ves a la pestaña operaciones y en el fieldset "Mantenimiento de la tabla" pincha en "Reparar la tabla". Si así no funciona prueba a eliminarla y volver a crearla. Este código la elimina y la crea automáticamente.
DROP TABLE IF EXISTS `jos_session`;
CREATE TABLE IF NOT EXISTS `jos_session` (
`username` varchar(150) DEFAULT '',
`time` varchar(14) DEFAULT '',
`session_id` varchar(200) NOT NULL DEFAULT '0',
`guest` tinyint(4) DEFAULT '1',
`userid` int(11) DEFAULT '0',
`usertype` varchar(50) DEFAULT '',
`gid` tinyint(3) unsigned NOT NULL DEFAULT '0',
`client_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
`data` longtext,
PRIMARY KEY (`session_id`(64)),
KEY `whosonline` (`guest`,`usertype`),
KEY `userid` (`userid`),
KEY `time` (`time`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Si así tampoco te funciona puedes probar a usar ficheros como manejador de la sesión, en lugar de la base de datos, pero esto ya sería la última opción. Para ello accede a la configuración global, pestaña "Sistema" y en el fieldset "Configuración de sesión" selecciona "Base de datos".
Saludos.
Muchas gracias a los dos. Era justo lo que necesitaba.
Y..., ¿por qué se corrompe a veces la tabla de sesiones? ¿Cual es el motivo para que eso pase? ¿es culpa de Joomla, de MySQL, de según como amanezca el día...?
Hola Javiparati,
La tabla Jos_Session es la que se suele usar más a menudo en Joomla ya que guarda las sesiones de cada visitante en esa tabla y es donde se añaden registros cada vez que hay una nueva sesión, cualquier fallo que tengas en el servidor donde tienes tu joomla te puede afectar a los inserts que se realizan en esta tabla y por eso es la tabla que tiene más posibilidades de resultar dañada.
Buenos días,
Tengo el mismo error que citáis en este tema y a pesar de haber reparado la tabla me sigue dando el mismo error (jtablesession::Store Failed
DB function failed with error number 1054
Unknown column 'gid' in 'field list' SQL=INSERT INTO `j25_session` ( `session_id`,`time`,`username`,`gid`,`guest`,`client_id` ) VALUES ( '585d5657c9af9b687bdfb3ff937ecda1','1352628059','','0','1','0' ))
He visto que se puede elminar y crear la tabla de j25_session, con el código que habéis puesto, pero no sé cómo se hace. ¿Me podéis indicar cómo hacerlo? Por más que miro no doy con ello. Tampoco puedo entrar en el administrador de Joomla.
El problema ha venido al actualizar con jupgrade de la versión 1.5 a la 2.5.
Hola Ricardo,
En vez de borrar, prueba a vaciar la tabla.
Saludos