La respuesta directa para esto sería
information_schema.statistics
mysql> desc information_schema.statistics;
+---------------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------------+---------------+------+-----+---------+-------+
| TABLE_CATALOG | varchar(512) | NO | | | |
| TABLE_SCHEMA | varchar(64) | NO | | | |
| TABLE_NAME | varchar(64) | NO | | | |
| NON_UNIQUE | bigint(1) | NO | | 0 | |
| INDEX_SCHEMA | varchar(64) | NO | | | |
| INDEX_NAME | varchar(64) | NO | | | |
| SEQ_IN_INDEX | bigint(2) | NO | | 0 | |
| COLUMN_NAME | varchar(64) | NO | | | |
| COLLATION | varchar(1) | YES | | NULL | |
| CARDINALITY | bigint(21) | YES | | NULL | |
| SUB_PART | bigint(3) | YES | | NULL | |
| PACKED | varchar(10) | YES | | NULL | |
| NULLABLE | varchar(3) | NO | | | |
| INDEX_TYPE | varchar(16) | NO | | | |
| COMMENT | varchar(16) | YES | | NULL | |
| INDEX_COMMENT | varchar(1024) | NO | | | |
+---------------+---------------+------+-----+---------+-------+
16 rows in set (0.01 sec)
Puedes SELECCIONAR de esa tabla con
SELECT * FROM information_schema.statistics
WHERE table_schema='mydb' AND table_name='mytable';
o ver las estadísticas haciendo
MOSTRAR ÍNDICES DE mydb.mytable;
Tenga en cuenta que esta tabla no siempre es precisa en un entorno de escritura intensa. Periódicamente, deberá ejecutar ANALYZE TABLE en todas las tablas MyISAM que se actualizan con frecuencia. De lo contrario, MySQL Query Optimizer, que se basa en information_schema.statistics, a veces puede tomar malas decisiones al desarrollar planes EXPLAIN para consultas. Las estadísticas de índice deben estar lo más actualizadas posible.
ANALYZE TABLE no tiene ABSOLUTAMENTE EFECTO contra las tablas InnoDB. Todas las estadísticas de índice para InnoDB se calculan a pedido mediante inmersiones en las páginas BTREE. Por lo tanto, cuando ejecuta SHOW INDEXES FROM contra una tabla InnoDB, las cardinalidades que se muestran son siempre aproximaciones.
ACTUALIZACIÓN 2011-06-21 12:17 EDT
Para aclarar la TABLA DE ANÁLISIS, permítanme reformular. Ejecutar ANALYZE TABLE en tablas InnoDB es completamente inútil. Incluso si ejecutó ANALYZE TABLE en una tabla de InnoDB, el motor de almacenamiento de InnoDB realiza inmersiones en el índice para aproximaciones de cardinalidad una y otra vez, destruyendo las estadísticas que acaba de compilar . De hecho, Percona realizó algunas pruebas en la TABLA DE ANÁLISIS y también llegó a esa conclusión.