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

Se jodio la tabla sin más - Can't open file: t_usuarios.MYI'. (errno: 145)

Estas en el tema de Se jodio la tabla sin más - Can't open file: t_usuarios.MYI'. (errno: 145) en el foro de Mysql en Foros del Web. Hoy entro en una de mis páginas webs y veo un error en una de las consultas de mysql... digo que raro si no he ...
  #1 (permalink)  
Antiguo 09/05/2006, 20:56
Axo
 
Fecha de Ingreso: abril-2003
Ubicación: Virtual
Mensajes: 953
Antigüedad: 21 años
Puntos: 7
Se jodio la tabla sin más - Can't open file: t_usuarios.MYI'. (errno: 145)

Hoy entro en una de mis páginas webs y veo un error en una de las consultas de mysql... digo que raro si no he tocado nada...

Entro en el phpmyadmin y veo la tabla t_user con un mensaje:
Código PHP:
SQL query

SHOW COLUMNS FROM `t_usuariosFROM `bd_01
MySQL said:  

#1016 - Can't open file: t_usuarios.MYI'. (errno: 145) 
me acojone vivo... digo la tabla me ha "cascado" pero me puse a buscar pensando... esto le ha tenido que pasar a mas gente fijo, no puedo ser el primero... jaja y buscando buscando encontre la solucion.

Solo hay que ejecutar una consulta (PESTAÑA SQL del phpmyadmin) con la siguiente sentencia:

REPAIR TABLE t_usuarios

y se ha reparado, por lo visto esto pasa cuando la tabla está corrupta. Mi pregunta es...

¿porque ha podido ser que cascara la tabla?¿hay forma de evitarlo?

Vaya susto que me he pegado... madre mia.
  #2 (permalink)  
Antiguo 10/05/2006, 07:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. Msyql es un "servidor" .. en definitiva un "programa" que puede fallar .. por algún problema del servidor (Máquina) .. por un cierre en forma abruta de Mysql .. Por una falla del sistema de archivos del servidor .. etc.

Cuando "reparas tablas" lo que haces es regenerar los "indices" de esas tablas, por qué la "falla" ocasionó lo más probable una discordancia entre los indices y los datos que la tabla en si tienes (normalmente se te debe haber perdido el último registro en curso cuando la falla se originó).

¿Cómo evitar el problema?
.. bueno, .. no sé que S.O. usas en tu servidor, ... sólo te hago el comentario por experiencia: Trabajé mucho tiempo con Mysql sobre Windows (más encima W98 °_°) .. cada vez que por A o B motivo se apagaba el servido en forma "abruta" (corte de luz .. etc .. (no tenía UPS) ...) me corrompía las tablas abiertas en ese momento "volatilizandome" el último registro que se estubiera trabajando sobre el de la tabla(s) implicadas .. por ende tenía que "Reparar la tabla" por lo menos para salvar todo lo anterior.

Bien ... me cambié ha Linux (nada del otro mundo ... una simple distribución Fedora (2,3,4,5 .. hasta la fecha las he probado todas). El problema que te planteo Nunca más sucedió ante un evento similar: "apagado a las malas" del servidor (y sigo sin UPS!!!! °_°').

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 10/05/2006, 14:55
Axo
 
Fecha de Ingreso: abril-2003
Ubicación: Virtual
Mensajes: 953
Antigüedad: 21 años
Puntos: 7
Hola Cluster, que de tiempo sin ver una respuesta a una pregunta mia (lo digo xq hace bastante que no pregunto gracias a dios ya me se defender bastante bien :D). Uso Fedora Core 3 si mal no recuerdo... nose si habra sido x un apagon, x alguna subida de tensio o x lo que sea... el caso es q ha pasado eso y ahora q me dices lo de q te pasba en todas las tablas que estaban usandose he caido que debo de mirar las otras BDs del servidor a ver si tb ha sucedido algo similar.

La verdad es q es muy raro... pero bueno una cosa mas que hemos aprendido en este magnifico mundo de php y mysql .

Saludos y muchas gracias x lo q me ayudaste scon tus contestaciones eficaces y rapidas en su dia !!
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 05:54.