
MySQL Workbench es una excelente herramienta GUI multipropósito para MySQL, que creo que no está bien comercializada por el equipo de MySQL y no es lo suficientemente apreciada por la comunidad por lo que puede hacer.
Licencia de MySQL Workbench
MySQL Workbench es similar a MySQL Server y es un producto de núcleo abierto. Hay Community Edition que tiene el código fuente bajo licencia GPL GitHub y también el propietario «MySQL Workbench Standard Edition (SE)» y «MySQL Workbench Enterprise Edition (EE)». Las diferencias entre las versiones se pueden encontrar en este documento.
En esta revisión de MySQL Workbench, me enfoco en MySQL Workbench Community Edition, a menudo llamado MySQL Workbench CE.
Descarga de MySQL Workbench
Puede descargar la versión actual de MySQL Workbench aquí.
Instalación de MySQL Workbench
La instalación, por supuesto, dependerá del sistema operativo. Instalé MySQL Workbench CE en Windows y fue bastante sencillo.
Inicie MySQL Workbench por primera vez
Si realiza el proceso de instalación predeterminado de MySQL Workbench, comenzará al final de la instalación. Y para empezar, verificará si hay servidores MySQL ejecutándose en el lugar y, como no tengo nada ejecutándose en el lugar, no detectará ningún servidor.
Debe hacer clic en el pequeño signo «+» junto al texto «Conexión MySQL» para agregar una conexión. Creo que un enlace más claro a «Agregar conexión» desde «Volver a explorar servidores» sería más útil.
Las opciones de conexión son geniales. Además del soporte para TCP/IP y Local Socket/Pipe, MySQL Workbench también tiene soporte para TCP/IP sobre SSH, lo cual es excelente si desea conectarse a servidores accesibles a través de SSH pero no tiene el puerto MySQL abierto.
Una vez que haya creado la conexión, puede abrir la pantalla principal de MySQL Workbench que se ve así:
¡Puedes ver que hay muchas cosas aquí! Veamos algunas características específicas.
Funciones de gestión de MySQL Workbench
El estado del servidor muestra información sobre el servidor MySQL en ejecución. Por supuesto, al ser un producto de Oracle no se pretende detectar implementaciones alternativas. En este caso, Percona Server tiene una función de grupo de subprocesos, pero aparece como N/A.
Los gráficos de información de rendimiento del servidor se actualizan en tiempo real y dan una idea de la carga del servidor.
Conexiones de cliente muestra las conexiones actuales al servidor MySQL. Esta vista tiene algunas características interesantes, por ejemplo, puede ocultar las conexiones de suspensión y ver solo las preguntas en ejecución, puede configurar la vista para que se actualice automáticamente y elimine algunas preguntas y conexiones. También puede ejecutar EXPLAIN for Connection para ver el plan de ejecución de la aplicación.
El funcionamiento de EXPLAIN for Connection es un poco complicado. Cuando hace clic en EXPLICAR para Conexión, se abre el folleto que contiene la aplicación, pero espero ver la explicación del resultado en este punto:
Cuando necesite hacer clic en el icono EXPLICAR para ver el resultado de la explicación de la consulta:
Tenga en cuenta que puede obtener EXPLICACIÓN para la solicitud dada o EXPLICACIÓN para CONEXIÓN, que puede ser diferente, especialmente en el caso de este problema en particular, donde el plan de ejecución fue anormal.
Se proporcionan varias vistas para EXPLAIN, incluidas Tabular Explain y Raw JSON Explained, si desea verlas, incluso si la configuración de Visual Explain es una característica única de MySQL Workbench.
También me gusta la función MySQL Workbench para proporcionar detalles adicionales sobre la conexión, como pulsaciones de teclas y atributos de conexión, que a menudo pueden ayudarlo a descubrir de qué caso particular de la aplicación proviene esta aplicación.
Usuarios y Privilegios
Esta característica de MySQL Workbench le permite ver y administrar sus usuarios:
No es muy avanzado, pero sí para las necesidades básicas de entender los privilegios de los usuarios. Tiene soporte incorporado para funciones administrativas, pero no parece admitir funciones genéricas o características más nuevas, como bloquear cuentas o solicitar un cambio de contraseña después de un cierto período de tiempo, etc.
Estado y variables del sistema
La sección Estado y variables del sistema en MySQL Workbench muestra el resultado de «MOSTRAR ESTADO GLOBAL» y «MOSTRAR VARIABLE»:
Me gusta el hecho de que la gran cantidad de parámetros y variables se agrupan en diferentes categorías y se proporciona algo de ayuda. El hecho de que todos los valores se proporcionen solo como números sin formato, sin formato y no normalizados por segundo cuando corresponda, dificulta el trabajo con dicha información.
Exportación de datos e importación/restauración de datos
Como sabrá, esto proporciona la funcionalidad para exportar e importar esquemas y posiblemente datos. Esto básicamente proporciona GUI para mysqldump, que es de gran ayuda para casos de uso más avanzados.
Gestión de instancias
Esto es interesante; incluso si he establecido una conexión con SSH, MySQL Workbench no lo usa automáticamente para el acceso de invitados. En su lugar, debe configurarse por separado haciendo clic en el icono de llave pequeña.
Si está utilizando Linux para la administración remota, debe proporcionar muchos detalles sobre la versión de Linux, el tipo de paquete e incluso los scripts de inicio que está utilizando, que pueden ser bastante fáciles.
Me pregunto por qué no hay detección automática del tipo de sistema implementado aquí.
Si configura la administración remota en MySQL Workbench correctamente, en teoría, puede iniciar/detener el servidor, consultar los registros del servidor y ver el archivo de opciones. No funcionó bien en mi caso.
Rendimiento – Tablero
La sección Panel de rendimiento de MySQL Workbench muestra una selección de gráficos de rendimiento. No es muy profundo y solo muestra estadísticas mientras se ejecuta MySQL Workbench, pero cubre algunos buenos conceptos básicos.
Rendimiento – Informes
La sección Informes de rendimiento en MySQL Workbench es bastante agradable; muestra muchos informes basados en el esquema del sistema MySQL.
Esto es bastante práctico, pero creo que sería beneficioso tener un mejor formato (por lo que no cuento los números para ver cuánta memoria se usa) e incluso los números de la instancia a menudo tienen poco sentido.
Configuración del esquema de rendimiento
Esta es una de las gemas ocultas en MySQL Workbench. Configurar Performance Schema en MySQL puede ser bastante complicado si no está familiarizado con él, y MySQL Workbench lo hace mucho más fácil. Sus controles de esquema de rendimiento predeterminados son muy básicos.
Sin embargo, al activar la configuración «Mostrar avanzada» obtendrá esta fantástica descripción general del esquema de rendimiento:
Además de permitirte modificar la configuración en detalle:
Hasta este momento, hemos operado en Vista de Administración. Si desea trabajar con Schema Database, desea cambiar MySQL Workbench a Schema View.
Esta vista le permite trabajar con tablas y otros objetos de esquema de base de datos. El menú contextual proporciona diferentes funciones para diferentes objetos.
Editor de consultas MySQL Workbench
Finalmente, echemos un vistazo al Editor de consultas de MySQL Workbench. Tiene muchas características avanzadas.
En primer lugar, me gusta que sea un editor de varias pestañas, por lo que puede tener varias consultas abiertas a la vez y cambiar entre ellas fácilmente. También tiene soporte para fragmentos útiles, tanto una gran biblioteca de integrados como creados por el usuario. También tiene soporte para ayuda contextual que puede ser muy útil para principiantes.
Me gusta el hecho de que MySQL Workbench agrega LIMIT 1000 de forma predeterminada a las consultas que ejecuta, y también le permite editar fácil y convenientemente los datos almacenados.
Examine los tipos de campo:
Vistas y estadísticas de ejecución de consultas:
Aunque en este caso, parece mostrar solo la información derivada de SHOW SESSION STATUS y no detalles más avanzados disponibles en Performance Scheme.
Visual Explain también es una joya de MySQL Workbench, pero ya lo cubrimos.
Resumen
En general, estoy muy impresionado con las funciones que ofrece MySQL Workbench CE (Community Edition). Para cualquiera que busque una GUI simple y gratuita para MySQL para ejecutar consultas y brindar ayuda básica con la administración, no necesita buscar más. Si tienes necesidades más avanzadas, especialmente en el área de seguimiento o gestión, debes buscar en otro lado. oráculo tiene Monitor empresarial de MySQL para este propósito, es un producto completamente comercial que viene con un envío de MySQL Enterprise. Si está buscando un producto centrado en el monitoreo de bases de datos de código abierto, considérelo Supervisión y Gestión de Percona.