Foro de elhacker.net

Programación => Bases de Datos => Mensaje iniciado por: Skeletron en 20 Marzo 2010, 20:39 pm



Título: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 20:39 pm
Hola gente..
Dentro de las carpetas DATA de MySQL, encuentro un archivo que pase muchisimo y se ha quedado ahí desde que importé con LOAD DATA unos 766 mb de informacion.

(http://img16.imageshack.us/img16/6411/extrao.png)

No se porque, pero tiene olor a algun tipo de archivo temporal....
Alguien sabe de que viene ese archivo?? (el PESADO, que esta seleccionado)


Título: Re: Que es este archivo?
Publicado por: royerphpmysql en 20 Marzo 2010, 20:55 pm
Hola amigo.
en essta liga viene informacion relacionada a tu pregunta.
http://dev.mysql.com/doc/refman/5.0/es/innodb-configuration.html
saludos


Título: Re: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 21:27 pm
Ohh... buen punto...

Pero ese archivo, pesa 2,5 gigas, y no 10mb como dice el documento...

Sin embargo, es verdad lo que tu dices, ya que yo tenía una tabla (que no sabía de que tipo era, ya que era una tabla importada de una web) y en la carpeta donde se contenía, no ocupaba espacio (solo 5kb)..

Es como que, eliminé la database que tenía esos muchisimos registros, pero no se vació ese archivo...
Como puedo hacerlo?


Título: Re: Que es este archivo?
Publicado por: ^Tifa^ en 20 Marzo 2010, 21:35 pm
Citar
Pero ese archivo, pesa 2,5 gigas, y no 10mb como dice el documento...

COmo ya te habras enterado, sino especificas ningun tipo de configuracion al motor InnoDB en my.inf  se generara por defecto ese archivito ibdata1 inicialmente por defecto tiene un tamanio de 10MB pero es autoextensible... que significa esto? significa que cada vez que creen tablas bajo el motor InnoDB y vayan insertando registros y registros y registros... el archivo como es autoextraible ira agrandando  ;)  en este caso, tenian una o varias tablas bajo InnoDB que toda su data y indices ocupaban 2.5 GB  :-X

Eliminar el archivo fisicamente seria perder todas las tablas InnoDB que puedas contener, si gustas puedes hacer un mysqldump de un esquema completo junto a sus tablas, que sean InnoDB y ya finalizado, eliminar ibdata1, y los 2 archivitos logs de este,  reiniciar el motor y ya reiniciado pos montar el dump previamente hecho :P para que se autogenere nuevamente ibdata1 pero de menor tamanio.


Título: Re: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 21:43 pm
Y ese archivo no se achica automaticamente?!??!?! QUE LOCURA!!!!

No hay un comando que haga eso solito??? de eliminar el archivo y crearlo nuevamente vacio?... O tendré que eliminar los 3 archivos manualmente, y reiniciar el pc?


Título: Re: Que es este archivo?
Publicado por: ^Tifa^ en 20 Marzo 2010, 21:45 pm
Un comando no, si quieres reducirlo (pero deberia dejar de existir este que tienes porke tiene datos). Tienes que generar uno nuevo, eliminando el que esta... para crearlo reducido o del tamano que gustes... edita my.ini en tu Windows buscate donde diga:

innodb_data_file_path = ibdata1:10MB:autoextend

edita eso a tu gusto...


Título: Re: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 21:55 pm
Donde puedo encontrar ese archivo TIFFA?


Título: Re: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 21:57 pm
Creo que lo he encontrado..

pero mira lo que estoy leyendo:

# The default storage engine that will be used when create new tables when
default-storage-engine=INNODB

Eso es para que la tabla predeterminada a crear sea INNODB???!!?!?!


Título: Re: Que es este archivo?
Publicado por: ^Tifa^ en 20 Marzo 2010, 21:59 pm
Lol si  :xD

O sea que todas tus tablas se guardan bajo InnoDB  :D


Título: Re: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 22:01 pm
Como puedo hacer para ver el tipo de tabla? (ya estando dentro de la database.. por linea de comandos)

Para cambiar ese comando a MyISAM, simplemente escribo MYISAM? :)


Título: Re: Que es este archivo?
Publicado por: ^Tifa^ en 20 Marzo 2010, 22:04 pm
Citar
Para cambiar ese comando a MyISAM, simplemente escribo MYISAM? :)

Exacto.

Citar
Como puedo hacer para ver el tipo de tabla? (ya estando dentro de la database.. por linea de comand

SHOW TABLE STATUS

o

SHOW CREATE TABLE  NOMBRE_TABLA

Tambien puedes verificar que ENGINES soporta tu motor y indicarle uno en my.ini

SHOW ENGINES


Título: Re: Que es este archivo?
Publicado por: Skeletron en 20 Marzo 2010, 22:15 pm
Algun comando para reiniciar MySQL sin reiniciar el pc?
O algun procedimiento


Título: Re: Que es este archivo?
Publicado por: ^Tifa^ en 21 Marzo 2010, 05:37 am
No habia visto tu pregunta  :xD

Estas en Windows no??? Vete a Panel de Control, Herramientas Administrativas, Servicios y alli buscate MySQL entre todos esos... seleccionalo con tu mouse y dale click a la opcion Restart.



Título: Re: Que es este archivo?
Publicado por: Skeletron en 21 Marzo 2010, 05:39 am
Si si.. Desde el adminsitrador de tareas ejecutado como administrador en windows 7

Gracias :)