Mytop es una herramienta para consola con la que podemos visualizar el estado del mysql y ver si hay consultas que se están restrasando o cargando el serividor mysql. También nos informa de la eficiencia de los índicies y el volumen de consultas.
En situaciones de alta carga nos puede ayudar a solucionar un cuello de botella o eliminar la base de datos como punto debil en nuestro análisis de rendimiento ( siempre que realicemos una valoración rápida ).
En Debian, la instalación se realiza con un simple :
apt-get install mytop
Pero en Fedora y CentOS es algo más largo, no por ello complicado. Con esta chuleta copiamos y pegamos y a esperar…
perl -MCPAN -e 'install Term::ReadKey'
perl -MCPAN -e 'install Time::HiRes'
perl -MCPAN -e 'install Term::ANSIColor'
cd /usr/src
wget http://jeremy.zawodny.com/mysql/mytop/mytop-1.6.tar.gz
tar zxvf mytop-1.6.tar.gz
cd mytop-1.6
perl Makefile.PL
make
make test
make install
En este momento si no hubiera ningún fallo, ya tenemos instalado mytop. Ahora solo falta configurar la conexión por defecto a la base de datos.
Un buen ejemplo puede ser este, el contenido añadelo a /root/.mytop o al home del usuario que vaya a lanzarlo.
user=admin
pass=password
host=localhost
db=test
delay=2
port=3306
socket=
batchmode=0
header=1
color=1
idle=1
Alguna vez he encontrado este eror:
Use of uninitialized value in substitution (s///) at /usr/bin/mytop line 958
Es debido a que no puede resolver la ip que está conectando al mysql, para localizar el problema, podemos parchear temporalmente el script agregando en la linea 958 :
print "Server:" . $thread->{Host} ;
Nos mostrará la ip que intenta resolver, una vez localizada lo podemos agregar a /etc/hosts.
Más información en : http://jeremy.zawodny.com/mysql/mytop/mytop.html