En el ámbito de la administración de bases de datos, contar con herramientas potentes y accesibles es esencial para mantener el rendimiento y la estabilidad del sistema. En este contexto, Dolphie emerge como una solución moderna para la monitorización de bases de datos MySQL en tiempo real, directamente desde la terminal.
¿Qué es Dolphie?
Dolphie es una herramienta basada en TUI (interfaz de usuario en terminal) que ofrece un análisis detallado de las métricas de salud de MySQL en tiempo real. Desarrollada en Python y utilizando el framework Textual, Dolphie combina una interfaz intuitiva con funcionalidades avanzadas, proporcionando una alternativa moderna y eficiente frente a herramientas como Innotop.
Principales características
- Interfaz gráfica en terminal
Dolphie muestra métricas clave como el consumo de CPU, uso de memoria, lista de procesos y replicación mediante gráficos interactivos y personalizables directamente en la terminal. - Paneles intercambiables
Los usuarios pueden alternar entre cuatro paneles principales:- Dashboard: Vista general de métricas del sistema.
- Lista de procesos: Gestión avanzada de hilos con opciones para ordenar, filtrar o finalizar procesos.
- Replicación: Información detallada sobre réplicas y transacciones errantes.
- Métricas gráficas: Visualización de gráficos como solicitudes del pool de buffers, logs de redo, entre otros.
- Compatibilidad con múltiples versiones y plataformas
Dolphie es compatible con MySQL (5.6 en adelante), MariaDB, y ProxySQL, así como con entornos como AWS RDS y Azure MySQL/MariaDB. - Grabación y reproducción de sesiones
Dolphie permite grabar sesiones en tiempo real para su posterior análisis. Los datos se almacenan en una base de datos SQLite comprimida, permitiendo reproducir la actividad tal como ocurrió. - Modo daemon
Ideal para una monitorización continua, el modo daemon registra datos en segundo plano sin mostrar la interfaz gráfica, asegurando la captura de información crítica durante eventos inesperados. - Soporte para credenciales encriptadas
Dolphie permite gestionar perfiles de credenciales en su archivo de configuración, facilitando conexiones seguras con múltiples hosts. - Función de autocompletado
Desde comandos hasta nombres de hosts y procesos, Dolphie incluye autocompletado para agilizar las operaciones.
Cómo funciona Dolphie
Al iniciar Dolphie, los usuarios son recibidos por un panel principal que muestra métricas clave, incluyendo Queries por Segundo (QPS) y listas de procesos activos. Desde ahí, se pueden activar o desactivar gráficos, filtrar procesos o alternar entre diferentes paneles según las necesidades del administrador.
Por ejemplo:
- Gestión de procesos:
Dolphie permite filtrar por usuario, host, texto de consulta o base de datos, así como finalizar hilos directamente desde la interfaz. - Gráficos avanzados:
Los gráficos muestran métricas clave como logs de redo, operaciones DML y estados de replicación.
Instalación
Dolphie requiere Python 3.8.1 o superior y puede instalarse utilizando diversas opciones:
- Homebrew:
brew install dolphie
- Pip:
pip install dolphie
- Docker:
Dolphie también está disponible como imagen Docker:docker pull ghcr.io/charles-001/dolphie:latest
docker run -it ghcr.io/charles-001/dolphie:latest
Ventajas frente a herramientas tradicionales
Dolphie se posiciona como una alternativa moderna a herramientas como Innotop, ofreciendo gráficos integrados, soporte para terminales avanzadas y compatibilidad con configuraciones modernas de MySQL y MariaDB. Además, su diseño modular y sus múltiples modos de operación lo convierten en una herramienta versátil para administradores de bases de datos.
Conclusión
Con su enfoque en la usabilidad y la modernidad, Dolphie es una herramienta imprescindible para cualquier administrador de bases de datos que busque una solución integral para la monitorización de MySQL. Su capacidad para visualizar métricas críticas en tiempo real, junto con opciones avanzadas de personalización, la posicionan como una de las mejores opciones disponibles en el mercado.
Para más información y descarga, visite el repositorio oficial en GitHub.