Mysql handler_read_rnd_next == Tablescans sin índices?
-
30-10-2019 - |
Pregunta
Estoy en el proceso de ajustar nuestro servidor Percona 5.5 y he estado utilizando las herramientas de Percona para trazar el rendimiento de nuestra base de datos. En la gráfica de manejadores MySQL, he estado notando muchas llamadas "Handler_read_rnd_Next".
Después de cavar un poco en el Docu de Dev MySQL, este controlador supuestamente indica: "Esto sugiere que sus tablas no están indexadas correctamente o que sus consultas no están escritas para aprovechar los índices que tiene"
Luego comencé a analizar nuestras consultas para llamadas no indexadas con la ayuda de TCPDump y MK-Query-Digest (Awesome Tool BTW) con las opciones:
- --filter '($ event-> {no_index_used} eq "sí" || $ event-> {no_good_index_used} eq "sí")'
Pero estoy dibujando un blanco: todas las consultas que se enumeran como no utilizando un índice son las que tienen un tipo de selección "derivado" en ellas en algún lugar y todas terminan en unos pocos milisegundos.
Por lo tanto, mi pregunta: si los tipos de selección derivados son los únicos sin índices, ¿de dónde vienen mis instancias handler_read_rnd_next? Agradecería cualquier ayuda que pueda obtener de tratar de averiguar cuál es el problema.
¡Gracias!
No hay solución correcta