2011-03-01 11 views

Respuesta

6

me gusta la herramienta mytop. Es como top en el mundo * nix, pero para MySQL. Y básicamente hace exactamente lo que está pidiendo ...

En cuanto a otras técnicas de optimización, personalmente me gusta usar Apache Bench para probar las consultas de MySQL. Básicamente, creo un script simple que no hace más que ejecutar la consulta que quiero mejorar. Luego, ejecuto AB en él con diferentes configuraciones de concurrencia. El beneficio es que se hace una idea de cómo se escala la consulta, no solo qué tan rápido se ejecute. A quién le importa si una consulta es rápida para una sola ejecución. Lo que realmente te importa es qué tan rápido en carreras con carga. Por lo tanto:

<?php 
$my = new MySQLi($host, $user, $pass); 
$my->query('SELECT foo'); 

Luego, utilizando AB:

ab -c 10 -n 10000 http://localhost/path/to/my/test.php 

Entonces, ajustando el parámetro de concurrencia (-c 10) se puede comprobar la diferente carga concurrente. De esta forma, realmente puede ver cómo los ajustes afectan la consulta exacta en lugar de adivinar con otras métricas.

0

Sé que usted hizo su pregunta hace mucho tiempo, pero me acabo de cruzar y quería compartir otra herramienta con usted. Baron Schwartz de Percona comenzó innotop, que es una próxima generación mytop. Agrega monitoreo avanzado de InnoDB además del estado del servidor y análisis de consultas. Si está ejecutando CentOS, se incluye en el repositorio de EPEL.

Cuestiones relacionadas