que motor index how analyze almacenamiento mysql innodb

motor - refresh index mysql



¿Cómo puedo reconstruir índices y actualizar estadísticas en MySQL innoDB? (3)

¿Por qué? Uno casi nunca necesita actualizar las estadísticas. La reconstrucción de un índice es aún más rara vez necesaria.

OPTIMIZE TABLE tbl; reconstruirá los índices y hará ANALYZE ; Toma tiempo.

ANALYZE TABLE tbl; Es rápido para que InnoDB reconstruya las estadísticas. Con 5.6.6 es aún menos necesario.

Tengo experiencia con el servidor MS SQL donde es posible y útil actualizar estadísticas y reconstruir índices . No puedo encontrar dicha opción en MySQL innoDB, ¿existe tal opción? Si no, ¿cómo la base de datos MySQL crea un plan de ejecución? ¿MySQL actualiza los índices y las estadísticas con cada ACTUALIZACIÓN e INSERTAR?


Esto se hace con

ANALYZE TABLE table_name;

Lea más sobre esto here .

ANALIZAR TABLA analiza y almacena la distribución de claves para una tabla. Durante el análisis, la tabla se bloquea con un bloqueo de lectura para MyISAM, BDB e InnoDB. Esta declaración funciona con las tablas MyISAM, BDB, InnoDB y NDB.


También puede usar la herramienta CLI proporcionada mysqlcheck para ejecutar las optimizaciones. Tiene un montón de interruptores, pero en su forma más básica, simplemente pasa la base de datos, el nombre de usuario y la contraseña.

Agregar esto a cron o al Programador de Windows puede hacer que este sea un proceso automatizado . (MariaDB pero básicamente lo mismo.)