LINUX

Mytop – Cómo monitorear el rendimiento de MySql

mi top

Mytop es un programa muy útil para ver todas las consultas que un servidor está procesando actualmente, así como qué usuario las está ejecutando. Piense en mytop como superior para mysql. Si ve mucho de un usuario en particular, eso significa que probablemente sea el cerdo. Mytop también puede ser útil para averiguar exactamente qué consultas están causando el problema en caso de que tenga un sitio web diseñado por usted mismo.

Mytop es la utilidad para monitorear el rendimiento del servidor mysql. Si es un usuario habitual de Linux, es posible que ya conozca la parte superior de la utilidad de Linux que se utiliza para monitorear el sistema en ejecución. Mytop es una utilidad similar que monitorea el rendimiento y enumera los subprocesos del servidor mysql. Desarrollado y mantenido por Jeremy D. Zawodny, mytop se publica bajo GNU GPL (versión 2) y también está disponible para Windows. Este tutorial proporciona una descripción general de la herramienta mytop.

Instalar Mytop

Mytop se puede descargar desde Sitio web de Jeremy.

Necesita algunos paquetes adicionales para su correcto funcionamiento. Asegúrese de que los siguientes paquetes estén instalados en su sistema:

Perl 5.005 or newer
Config::IniFiles
Getopt::Long
DBI::mysql and DBD::mysql
Term::ReadKey from CPAN

Término :: ReadKey se puede descargar desde CPAN

Es probable que otros se instalen en la mayoría de los sistemas. Si desea compatibilidad con colores en mytop, instale Term :: ANSIColor de CPAN.

Con todos estos instalados, su sistema ahora está listo para ejecutar mytop.

Ejecutando Mytop

La sintaxis de Mytop es simple, como se muestra a continuación:

mytop [options]

Por defecto, mytop usa el nombre de usuario como «root» y la contraseña no. Puede especificar el usuario con la opción «-u usuario» y la contraseña con «-p contraseña». Una vez que haya proporcionado la contraseña requerida, mytop le presentará una pantalla interactiva que se ve así:

MySQL on localhost (5.1.63-0ubuntu0.11.04.1) up
0+01:45:40 [10:40:38]
Queries: 1.1k qps: 0 Slow: 0.0 Se/In/Up/De(%): 00/00/00/00
qps now: 0 Slow qps: 0.0 Threads: 2 ( 1/ 0) 00/00/00/00
Key Efficiency: 100.0% Bps in/out: 4.0/649.7 Now in/out: 8.4/ 1.5k

Id User Host/IP DB Time Cmd Query or State
-- ---- ------- -- ---- --- --------------
40 root localhost 0 Query show full processlist
35 raghu localhost 5024 Sleep

Mytop es un comando interactivo. Esperará la entrada del usuario una vez que lo ejecute y falte su mensaje. Para salir de mytop, simplemente presione ‘q’.

Mostrar

La salida de Mytop se divide en dos partes. La primera parte es el encabezado, las 4 líneas superiores se presentan aquí:

MySQL on localhost (5.1.63-0ubuntu0.11.04.1) up 0+01:45:40 [10:40:38]
Queries: 1.1k qps: 0 Slow: 0.0 Se/In/Up/De(%): 00/00/00/00
qps now: 0 Slow qps: 0.0 Threads: 2 ( 1/ 0) 00/00/00/00
Key Efficiency: 100.0% Bps in/out: 4.0/649.7 Now in/out: 8.4/ 1.5k

La primera línea muestra el nombre de host del servidor (‘localhost’ aquí) y la versión de mysql (5.1.63-0ubuntu0.11.04.1) con la plataforma. También muestra el tiempo de actividad del servidor mysql en ‘días + horas: minutos: segundos’ y la hora actual.

La segunda línea muestra el número total de consultas que se han procesado, el promedio de consultas por segundo, el número promedio de consultas lentas y el porcentaje de consultas SELECCIONAR, INSERTAR, ACTUALIZAR y ELIMINAR. La tercera línea es como la segunda línea, pero muestra valores en tiempo real. La cuarta línea es para el rendimiento del servidor. Muestra Key Efficiency, es decir, cuántas claves se leen del búfer que del disco duro. Sigue el número de bytes enviados y recibidos hasta el momento, y los valores en tiempo real (es decir, en el último ciclo).

La segunda parte muestra los subprocesos que está procesando el servidor.

Id User Host/IP DB Time Cmd Query or State
-- ---- ------- -- ---- --- --------------
40 root localhost 0 Query show full processlist
35 raghu localhost 5024 Sleep

La siguiente información se muestra en el resultado anterior:

• Thread IDs
• User connected with server
• Hostname from which a user is connected
• The database they are connected to
• Idle time
• Command executed by thread
• Query info of the thread

Estos hilos están ordenados por su tiempo de inactividad de forma predeterminada.

Interactuando con mytop

Puede presionar ‘?’ para ver qué comandos están disponibles en un momento dado en la salida de mytop. Cuando presiona ‘?’, Se muestra lo siguiente:

Ayuda para mytop versión 1.6 por Jeremy D. Zawodny

? - display this screen
# - toggle short/long numbers (not yet implemented)
c - command summary view (based on Com_* counters)
d - show only a specific database
e - explain the query that a thread is running
f - show full query info for a given thread
F - unFilter the dispaly
h - show only a specifc host's connections
H - toggle the mytop header
i - toggle the display of idle (sleeping) threads
I - show innodb status
k - kill a thread
p - pause the display
m - switch [mode] to qps (queries/sec) scrolling view
o - reverse the sort order (toggle)
q - quit
r - reset the status counters (via FLUSH STATUS on your server)
s - change the delay between screen updates
t - switch to thread view (default)
u - show only a specific user
: - enter a command (not yet implemented)

Visite el sitio web de Jeremy para más ayuda

Archivo de configuración de Mytop

Mytop le proporciona una gran cantidad de opciones de línea de comandos para especificar nombre de usuario, contraseña, nombre de host, base de datos a la que conectarse, número de puerto, etc. Pero todos estos parámetros se pueden almacenar en un archivo de configuración en su directorio de inicio, para que usted no lo haga debe proporcionarlos en la línea de comandos cada vez que ejecute mytop. Un archivo de configuración de muestra que se proporciona en la página del manual del comando mytop es:

user=root
pass=
host=localhost
db=test
delay=5
port=3306
socket=
batchmode=0
header=1
color=1
idle=1

En este archivo,

• user is the username with which command is run (default: root),
• pass is the password for that user (default none),
• host is hostname of mysql server (dafault: localhost),
• db is the database to connect to (default: none),
• delay is the delay (in seconds) between refreshing the myoutput screen (default: 5),
• port specifies the port at which mysql is running (default: 3306),
• socket is the location of socket file, if connection is to be made through socket instead of standard tcp/ip connection (default: none),
• batchmode specifies if the command is to be run non interactively, just once and exit (default: unset (or 0)),
• If header is 0 (or noheader), header part will not be displayed. Header can be toggled with h key later (default is header (1)),

• color specifies if you want colors in the output or not (default is color, if you have color support),
• idle species whether you want to display idle threads or not (default: 1).

Esto debe almacenarse en un archivo llamado «.mytop» en el directorio de inicio de un usuario (archivo oculto).

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar