Herramienta de Monitorización de Rendimiento MySQL: mytop
Instalación y Configuración
En sistemas Centos, puede instalar mytop directamente usando yum:
yum install mytop
Una vez instalado, puede ejecutarlo de manera similar al comando top:
mytop
Si encuentra un error de permisos, como el siguiente:
# mytop !500
Cannot connect to MySQL server. Please check the:
* database you specified "test" (default is "test")
* username you specified "root" (default is "root")
* password you specified "" (default is "")
* hostname you specified "localhost" (default is "localhost")
* port you specified "3306" (default is 3306)
* socket you specified "" (default is "")
The options my be specified on the command-line or in a ~/.mytop
config file. See the manual (perldoc mytop) for details.
Here's the exact error from DBI. It might help you debug:
Access denied for user 'root'@'localhost' (using password: NO)
Archivo de Configuración
Para evitar el error de acceso, puede crear un archivo de configuración en su directorio de inicio:
vim ~/.mytop
Agregue la siguiente información, adaptando los valores según su entorno:
host=localhost
user=root
pass=su_contraseña
db=nombre_base_datos
port=3306
# Intervalo de actualización en segundos
delay=5
batchmode=0
color=1
idle=1
Uso
Escribir la contraseña directamente en el archivo de configuración puede ser un riesgo de seguridad. Una alternativa es usar la opción --prompt:
mytop --prompt
Luego, se le solicitará la contraseña dentro de la terminal.
Si prefiere no configurar un archivo o especificar parámetros, puede indicar la base de datos a monitorizar directamente:
mytop -d nombre_base_datos --prompt
Monitorización y Descripción de Métricas
Al ejecutar mytop, verá una interfaz similar a esta:
MySQL on localhost (5.7.18) up 345+19:27:20 [18:55:58]
Queries: 778.2k qps: 0 Slow: 0.0 Se/In/Up/De(%): 72/00/02/00
qps now: 1 Slow qps: 0.0 Threads: 3 ( 1/ 6) 50/00/00/00
Key Efficiency: 50.0% Bps in/out: 3.3/163.3 Now in/out: 24.9/ 2.1k
Id User Host/IP DB Time Cmd Query or State
-- ---- ------- -- ---- --- ----------
568 root localhost story 0 Query show full processlist
567 root localhost story 5 Sleep
541 root localhost:44568 solo 3529 Sleep
1. Descripción de Métricas
Primera Línea:
Queries: 778.2k qps: 0 Slow: 0.0 Se/In/Up/De(%): 72/00/02/00
Queries: Número total de consultas procesadas por el servidor.qps: Promedio de consultas por segundo (Queries Per Second).Slow: Número total de consultas lentas.Se/In/Up/De(%): Porcentaje de consultas de tipo SELECT, INSERT, UPDATE y DELETE respectivamente.
Segunda Línea:
qps now: 1 Slow qps: 0.0 Threads: 3 ( 1/ 6) 50/00/00/00
qps now: Consultas por segundo en el intervalo actual.Slow qps: Consultas lentas por segundo en el intervalo actual.Threads: Número total de hilos de conexión. El primer número entre paréntesis indica hilos activos, el segundo hilos en caché.- La última columna muestra el porcentaje de operaciones SELECT, INSERT, UPDATE, DELETE en el intervalo actual.
Tercera Línea:
Key Efficiency: 50.0% Bps in/out: 3.3/163.3 Now in/out: 24.9/ 2.1k
Key Efficiency: Porcentaje de uso de índices desde caché (en lugar de disco).Bps in/out: Cantidad promedio de datos de entrada/salida (Bytes Per Second) en el servidor MySQL.Now in/out: Cantidad de datos de entrada/salida (Bytes Per Second) en el intervalo actual.
Información de Hilos:
La parte inferior de la pantalla muestra información detallada sobre cada hilo de conexión, incluyendo su ID, usuario, host, base de datos, tiempo de ejecución, comando actual y el estado de la consulta.
2. Comandos Útiles
- Presione
F, ingrese un ID de hilo y luegoepara ver los detalles de la consulta SQL que está ejecutando ese hilo. - Presione
cpara ver un resumen de las consultas ejecutadas. Presoinetpara volver a la vista anterior. - Presione
?para acceder a la ayuda y ver todos los comandos disponibles.