MySQL Monitoring · 4 min read · Sep 12, 2025

Monitorear conexiones y consultas MySQL con mytop

Este artículo explicará la instalación y el uso de mytop, una herramienta útil para el monitoreo en vivo de consultas MySQL. También se analizarán varias operaciones que un usuario puede realizar mientras monitorea las consultas en mytop.

Acerca de mytop

Mytop es una herramienta de línea de comandos que se asemeja al comando top pero para monitorear MySQL. Requiere MySQL 3.22 o posterior, las versiones actuales de MySQL 5.x son compatibles. Funciona bien con la mayoría de los sistemas Linux. Para este tutorial usaré Ubuntu como base. Necesita Perl, DBI y Term::ReadKey instalados en el sistema. Con Term::ANSIColor puedes obtener color en la salida mostrada si lo deseas. La versión 0.7 funciona incluso con Windows.

Instalación

Como ya he dado la información sobre otras herramientas y aplicaciones requeridas para la funcionalidad de mytop en la introducción, comenzaré directamente con la instalación de mytop:

Debian:

apt-get install mytop

Ubuntu:

sudo apt-get install mytop

O, si estás dispuesto a descargar el archivo tar desde el sitio web e instalarlo, entonces:

tar -zxvf mytop-x.x.x.tar.gz (Tu número de versión)
 cd mytop-x.x.x. (Tu número de versión)
 perl Makefile.PL
 make
 make test
 make install

Escribe los comandos anteriores para extraer los datos y finalizar la instalación. Para los usuarios de CentOS y RedHat, tendrás que descargar el repositorio rpmforge para instalarlo automáticamente, o puedes optar por el método manual en su lugar.

Usando mytop

Después de la instalación, es hora de usar mytop:

mytop --prompt (esto te dará un aviso de contraseña, simplemente presiona enter y estarás dentro)

Arriba está la forma predeterminada, también puedes escribir esto:

mytop -u root -p (aquí tendrás que usar tu contraseña de mysql, porque estás especificando un usuario "root" aquí)

Si el comando anterior devuelve un error como “root : NO PASS” o algo similar, prueba esto:

mytop -u root -p xxxx ("xxxx" representa tu contraseña)

Por favor, verifica si tu servidor MySQL está en funcionamiento antes de escribir cualquiera de los comandos anteriores.
Una vez que hayas terminado, simplemente presiona enter y debería devolver algo como esto:

La primera línea indica el nombre del servidor (localhost) y también la versión de MySQL que se está ejecutando en tu sistema. La línea marcada en azul indica el tiempo de actividad del servidor MySQL en formato días+horas:minutos:segundos y al lado está la hora actual en el sistema.
La segunda línea indica el número de consultas que el servidor ha manejado desde el tiempo de actividad.
La tercera línea muestra el número de hilos.
Y la segunda parte de la imagen muestra la lista de hilos manejados por MySQL. están ordenados según su tiempo de inactividad, primero los menos inactivos. Puedes ver la información y entenderla fácilmente.

Hay algunos argumentos que puedes pasar con mytop, tales como:
-u o usuario nombre_de_usuario: Básicamente se usa para definir el nombre de usuario al iniciar sesión en mytop. El valor predeterminado está configurado en “root”.

-p o pass o contraseña contraseña: Contraseñas utilizadas para el inicio de sesión del usuario. La contraseña predeterminada está vacía o no existe, o simplemente deja el campo de contraseña en blanco.

-h o host nombre_del_host[:puerto]: Para especificar puertos si MySQL no está utilizando el puerto predeterminado. El valor predeterminado está configurado en 3306.

-s o -delay segundos: Para especificar el intervalo de tiempo para la actualización. El valor predeterminado es 5.
Estos son algunos de los argumentos de mytop; para saber más, puedes escribir:

man mytop

Las páginas del manual contienen más que suficiente información para que cualquiera entienda algo sobre mytop.
Solo un vistazo al archivo de configuración que puedes crear para ti mismo para obtener un acceso y monitoreo fácil de tus datos:

  user=root         #El usuario que te gustaría definir.
  pass=             #Puedes definir contraseñas para tu usuario.
  host=localhost     #tu nombre de host
  db=test            #tu nombre de base de datos.
  delay=5           #intervalo de tiempo para actualizar la salida del monitoreo.
  port=3306         #puerto que te gustaría que mytop use.
  socket=           #si especificas algún socket, mytop ignorará el número de puerto y el nombre de host dados, puedes simplemente eliminarlo si no lo encuentras útil.
  batchmode=0      #evita el borrado de pantalla y te da una serie directa de consultas que está utilizando MySQL.
  header=1         #Especifica si deseas que se muestre el encabezado o no. Puedes alternar esto con la tecla h mientras mytop está en ejecución.
  color=1          #Especifica si deseas usar colores en la visualización (solo funcionará si tienes soporte de color).
  idle=1           #si deseas ver procesos inactivos en la lista de procesos.
  

Puedes crear el archivo anterior escribiendo:

nano ~/.mytop (esto debe crearse en tu carpeta de inicio y puedes usar cualquier editor que desees.)

Puedes verificar algunas otras opciones en mytop escribiendo: ?. Te dará una página completa de atajos de teclado que puedes usar en mytop.

Esto es todo el tutorial; puedes revisar la página del manual como mencioné anteriormente. Puedes obtener cada información actualizada de tus páginas del manual después de la instalación…

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.