myflames, una herramienta de código abierto que convierte los planes de ejecución de MySQL y MariaDB en gráficos interactivos para ver dónde pierde tiempo una consulta, ha dejado de ser solo un analizador de consultas. Su autor, el desarrollador que publica el proyecto en GitHub como vgrippa, la presenta ahora como un espacio para investigar la salud de la base de datos y administrarla, con aplicaciones de escritorio para macOS y Windows.
Las claves de myflames en 20 segundos
- Visualiza planes de ejecución de MySQL y MariaDB como gráficos de llamas y diagramas.
- Suma diagnóstico del servidor, gestión de esquemas y un editor de consultas.
- Hay app firmada para macOS y una versión preliminar para Windows.
- Es software libre con licencia Apache 2.0 en sus versiones actuales.
El proyecto nació como una extensión de FlameGraph, las conocidas gráficas de llamas de Brendan Gregg para perfilar rendimiento, aplicadas a la salida de EXPLAIN ANALYZE. En lugar de leer un árbol de texto con tiempos y filas, el usuario ve qué operadores del plan consumen más tiempo y puede comparar un plan antes y después de crear un índice o reescribir una consulta.

De los planes de ejecución al servidor completo
Según su web, la herramienta ofrece ahora varias vistas del plan (Visual Explain, gráficos de llamas, árboles de ejecución y barras), captura de planes desde una conexión en vivo o desde logs de consultas lentas sin conexión, y localización de las sentencias más costosas. Los planes pueden exportarse como informes HTML o JSON ocultando los valores literales, algo útil para compartirlos sin exponer datos.
La parte nueva se centra en el servidor: métricas en vivo, InnoDB, esperas, E/S, sesiones activas, árboles de bloqueos y comprobaciones de configuración con sugerencias de parámetros. También gestiona esquemas, con diagramas, versiones guardadas, comparación de definiciones entre servidores y scripts de sincronización que se generan para revisarlos antes de aplicarlos. En el anuncio del proyecto, su autor menciona además matar consultas, analizar fragmentación, exportar e importar datos y esquemas e integrarse con MySQL Shell, Readyset y ProxySQL; esas funciones no aparecen todavía detalladas en la documentación pública consultada.
Políticas de escritura para no romper producción
Una herramienta que puede ejecutar acciones sobre la base de datos necesita frenos. myflames clasifica las conexiones como producción, desarrollo o solo lectura, obliga a revisar la sentencia SQL exacta antes de las acciones protegidas y guarda un registro de auditoría local. El repositorio advierte de un detalle importante: EXPLAIN ANALYZE ejecuta realmente la consulta, así que conviene elegir bien dónde se lanza. Las contraseñas no se guardan en el espacio de trabajo local.
Admite MySQL 5.7 o posterior, MariaDB 10.11 o posterior y Percona Server for MySQL, aunque los planes con tiempos en formato JSON requieren MySQL 8.3 o superior. La app de macOS está firmada y notarizada para Apple Silicon y la de Windows es una vista previa sin firmar. También puede instalarse con pip. Las versiones actuales usan licencia Apache 2.0, mientras que hasta la 2.3.0 se distribuía con CDDL 1.0.
Preguntas frecuentes
¿Qué es myflames?
Una herramienta libre que convierte los planes de ejecución de MySQL y MariaDB en gráficos interactivos y que ahora incluye diagnóstico del servidor y gestión de esquemas.
¿Qué bases de datos admite?
MySQL 5.7 o posterior, MariaDB 10.11 o posterior y Percona Server for MySQL. Los planes con tiempos en JSON requieren MySQL 8.3 o superior.
¿En qué sistemas funciona?
Hay app para macOS con Apple Silicon y una versión preliminar para Windows x64, además del paquete de Python instalable con pip.
Fuentes: