2010-10-04 30 views
12

Como primer mensaje aquí, no sé si tengo que responder o publicar un nuevo mensaje. Tengo el mismo problema que here y la única respuesta dada no me ayuda (excepto si la documentación es incorrecta). "Puede hacer que OPTIMIZE TABLE funcione en otros motores de almacenamiento", pero mi motor es InnoDB. Gracias por su ayuda. S.No se puede optimizar la tabla innoDB

+0

posible duplicado de [Optimizar tabla InnoDB] (http://stackoverflow.com/questions/2816044/optimize-innodb-table) – Bobby

+2

No me malinterpreten, pero hay de todo, claramente explicado en la otra pregunta. InnoDB no admite directamente "OPTIMIZE", sino que tiene que hacer una "ALTER TABLE" para reconstruir los índices. Entonces, sí, funciona, simplemente no te dice eso. – Bobby

Respuesta

28

OPTIMIZE TABLE funciona bien en las tablas InnoDB. El mensaje que dice "La tabla no admite optimizar, hacer recrear + analizar en su lugar" es puramente informativo. Puede ignorar ese mensaje de forma segura.

+2

Sí. La documentación ahora indica claramente que es un mensaje esperado: http://dev.mysql.com/doc/refman/5.5/en/optimize-table.html –

2

No se puede IGNORAR el resultado ... eso significa que está haciendo una operación MUY intensiva en lugar de una luz ... una tabla muy grande (> 100G) esto podría tomar horas en lugar de minutos.

-3

uso de este

ALTER TABLE table ENGINE='InnoDB'; 
Cuestiones relacionadas