Es un problema conocido que innodb es lento en
SELECT count(*) FROM Table
Por eso lo evité. Pero noto que cada vez que inicio sesión en phpmyadmin, se ejecutará automáticamente count(*)
para mi tabla innodb con 19k filas, lo que puede tomar hasta un minuto en ejecutarse. Sin embargo, no se inicia así count(*)
para la otra tabla innodb con 4 millones de filas.
Otra pista, en phpmyadmin, bajo la columna Registros, el número de registros para la tabla de 19k filas muestra el valor exacto, mientras que la tabla de 4 millones de filas muestra un aprox.
Entiendo que innodb table da una estimación del recuento de filas. Pero parece que para una tabla más pequeña, en este caso con 19k filas, phpmyadmin decide hacer una en count(*)
lugar de solo dar una estimación.
La pregunta es, ¿hay alguna manera de evitar que phpmyadmin cuente en mi mesa innodb? Está bien dar una estimación en lugar de hacer un recuento costoso de filas cada vez que actualizo mi pantalla phpmyadmin.
20000
con un número menor, por ejemplo 300
, guarde el archivo, actualice phpmyadmin y estará listo.