myflames es una herramienta de código abierto para MySQL y MariaDB que empezó convirtiendo la salida de EXPLAIN ANALYZE en gráficos de llamas y que ahora reúne en una aplicación de escritorio el análisis de consultas, el diagnóstico del servidor y la gestión de esquemas. Su autor la ha relanzado con binarios para macOS y Windows y la presenta como un lugar desde el que investigar la salud de la base de datos y administrarla.
Las claves de myflames en 20 segundos
- Muestra planes de ejecución como gráficos de llamas, árboles y Visual Explain.
- Diagnostica sesiones, bloqueos, InnoDB, E/S y configuración del servidor.
- Tiene políticas de producción, desarrollo y solo lectura con auditoría local.
- Funciona con MySQL 5.7+, MariaDB 10.11+ y Percona Server.
Leer un plan de ejecución en texto es tedioso cuando la consulta tiene varias uniones y subconsultas. myflames parte del trabajo de FlameGraph, las gráficas de Brendan Gregg para perfilar rendimiento, y las aplica a los planes de MySQL y MariaDB: cada operador ocupa un ancho proporcional a su tiempo, así que el cuello de botella salta a la vista.

Qué permite hacer
En la parte de consultas, myflames abre planes guardados, los captura desde una conexión en vivo como EXPLAIN o EXPLAIN ANALYZE, con parámetros, límite de tiempo, cancelación y hasta diez repeticiones, y también trabaja sin conexión a partir de logs de consultas lentas. Permite comparar dos capturas, por ejemplo antes y después de crear un índice, y exportar el análisis como HTML o JSON ocultando los valores literales. Un asistente sugiere cambios de índices, consultas y parámetros, que el propio repositorio recomienda tratar como candidatos a probar, no como recetas.
La parte de servidor incluye métricas en vivo, InnoDB, esperas, E/S, sesiones activas, árboles de bloqueos, revisión de configuración y un informe completo. En esquemas ofrece diagramas, versiones guardadas, comparación entre servidores y scripts de sincronización para revisar antes de aplicar. El autor menciona en su anuncio otras funciones, como matar consultas, analizar fragmentación, exportar e importar datos e integrarse con MySQL Shell, Readyset y ProxySQL, que no aparecen detalladas en la documentación pública consultada.
Para la línea de comandos y la integración continua tiene subcomandos como digest, advise y check, este último con códigos de salida pensados para CI, y un servidor MCP para conectar agentes de IA.
Seguridad, requisitos e instalación
Las conexiones se etiquetan como producción, desarrollo o solo lectura, las acciones protegidas exigen revisar el SQL exacto y queda un registro de auditoría local. Las contraseñas no se guardan en el espacio de trabajo, que almacena planes, notas y referencias en ~/.myflames/workspace.sqlite3, y en las conexiones en vivo se pasan al cliente mediante un archivo temporal con permisos solo para el propietario. Conviene recordar que EXPLAIN ANALYZE ejecuta la consulta: no es buena idea lanzarlo contra una sentencia pesada en producción en hora punta.
Admite MySQL 5.7 o posterior, MariaDB 10.11 o posterior y Percona Server for MySQL; los planes con tiempos en JSON necesitan MySQL 8.3 o superior. Hay app firmada y notarizada para macOS con Apple Silicon y una vista previa sin firmar para Windows x64. En Linux y otros sistemas se instala con pip install myflames o pipx, y necesita el cliente mysql o mariadb para las conexiones en vivo. Las versiones actuales tienen licencia Apache 2.0; hasta la 2.3.0 era CDDL 1.0.
Preguntas frecuentes
¿Qué es myflames?
Una herramienta libre que visualiza planes de ejecución de MySQL y MariaDB como gráficos de llamas y que incluye diagnóstico del servidor y gestión de esquemas.
¿Cómo se instala en Linux?
Con pip install myflames o pipx install myflames. Para conexiones en vivo hace falta el cliente mysql o mariadb.
¿Es seguro usarlo en producción?
Tiene políticas de solo lectura y revisión de SQL para acciones protegidas, pero EXPLAIN ANALYZE ejecuta la consulta, así que hay que usarlo con criterio.
¿Qué licencia tiene?
Apache 2.0 en las versiones actuales; hasta la 2.3.0 se distribuía con CDDL 1.0.
Fuentes:






