sql >> Base de Datos >  >> RDS >> Mysql

¿Hay alguna forma de verificar el rendimiento de la indexación de mysql?

La siguiente consulta le dirá si la consulta usa índice o no:

EXPLAIN EXTENDED SELECT col1, col2, col3, COUNT(1) 
FROM table_name 
WHERE col1 = val 
GROUP BY col1 
ORDER BY col2;

SHOW WARNINGS;

Puede agregar un índice de cobertura para obtener el mejor rendimiento.

Para cubrir el índice, agregue las columnas utilizadas en las cláusulas where primero, luego las columnas utilizadas en grupo por las columnas utilizadas en order by y luego las columnas utilizadas en select.

p.ej. para la consulta anterior, puede agregar el índice de cobertura KEY(col1, col2, col3)

*Nota Agregar más índices ralentizará sus consultas de inserción.