Yo tengo activado dicha opcion: innodb_file_per_table ,de hecho en el
directorio de la base de datos estan cada una de las tablas y sus
respectivos tamaños, pero no entiendo que hace que crezca el ibdata pues
aparentemente los datos no estan ahi sino en cada archivo.
Lo que me parece aun desconocido es porque si tengo 2 server identicos (en
la configuracion) pero uno es master y el otro slave ambos deberian estar
con los mismos tamaños en el ibdata,
En el slave lo volvi a crear desde cero pero aun no concuerdan los valores
de ibdata.
Gracias,
Saludos
Galo Izquierdo V
_____
De: Juan Eduardo Moreno [mailto:juaneduardomc@stripped]
Enviado el: Miércoles, 07 de Mayo de 2008 08:31
Para: galo.izquierdo@stripped
CC: mysql-es@stripped
Asunto: Re: ref: InnoDB
Galo,
El IBDATA ( ibdata1, ibdata2 etc) es un tablespace de definiciones de las
tablas innodb y datos transaccionales.
Si defines que tu data se vaya toda a este tablespace este ira creciendo día
a día conforme los inserts a tus tablas.
En este caso la única forma para comprirlo es recrearlo, previo backup de
todas tus bases de datos con mysqldump.
El procedimiento sería así :
1) Una vez generado el backup con mysqldump ( ejem mysqldump --opt
--databases base1 base2 base3..etc > base1.sql) de tus bases de datos,
debes borrar las bases ( drop database XXX).
2) bajar la base de datos y borrar físicamente el ibdata1 o 2 ( el nombre
que pusiste en el my.cnf).
3) Subir la base de datos, en la subida este va a recrear desde cero el
ibdata limpio, vacío y con el tamano inicial definido en el my.cnf
4) cargas las bases de datos nuevamente desde el backup con mysqldump previo
( usando mysql -pxxx -uxxx < backupbase1.sql)
Saludos
Juan Edo.
PS:
1) Si piensas que crece muchon tu ibdata, puedes usar innodb_file_per_table
en las opciones de subida de Innodb para dejar un archivo administrable por
tabla y no todo junto en el ibdata.
On 5/7/08, Galo Izquierdo V <galo.izquierdo@stripped> wrote:
Una pregunta, aunque he buscado por el web no he encontrado una respuesta
favorable,
Tengo un servidor Suse 10.2 con mysql 5.22, uso InnoDB el cual tengo un
ibdata de mas de 3gb.
Hay alguna manera de comprimir o desfragmentar el archivo ibdata pues yo
replico esa base de datos en otro suse
identico el cual tiene su ibdata de 2.3gb no entiendo el porque las
diferencias.
Gracias de antemano.
Galo Izquierdo V
Coordinador de IT
Hamburg Süd Ecuador S.A.
PBX: (593 4) 220-7989 ext: 404
Fax: (593 4) 220-7990
Movil: (593 9) 278-6000
Certificacion ISO 9001:2000 ISO 14001 desde Agosto 16, 2001
Certificacion BASC G 02:2003 desde Mayo 22,2003
email: galo.izquierdo@stripped
web page:
<file:///C:/Documents%20and%20Settings/Administrador/Datos%20de%20programa/M
icrosoft/Signatures/www.hamburgsud.com> www.hamburgsud.com
Cuida tu planeta, recicla.