Estamos tratando de depurar el rendimiento del servidor y me gustaría capturar una instantánea de las consultas que se ejecutan en nuestro servidor MySQL durante un par de minutos.
Estoy familiarizado con MySQL SHOW FULL PROCESSLIST, sin embargo, me gustaría poder ejecutar esto a través de la línea de comando para poder volcarlo en un archivo y publicarlo.
¿Hay alguna manera de enviar esta consulta a un archivo y hacer que se ejecute cada segundo más o menos?
¿Hay una mejor manera de capturar todas las consultas que se ejecutan?
Tenga en cuenta que no estoy interesado solo en las consultas lentas (estoy familiarizado con el registro de consultas lentas).
echo show full processlist | mysqlmejor o mejor SELECT info FROM information_schema.processlist WHERE Command="Query" AND User!="root"en un ciclo en bash. Agregue un par de líneas y obtendrá la misma funcionalidad de consulta que innotopo pt-kill