Activar Mysql Log Slow Queries

Comprobamos que, efectivamente, tenemos el log de querys lentas desactivado.

# mysqladmin var -uusario -ppassword |grep log_slow

| log_slow_queries | OFF

Editamos de la siguiente forma el archivo de configuración de MySQL, normalmente ubicado en /etc/my.cnf

[mysqld]
log-slow-queries=/var/log/mysql-slow-queries.log
long_query_time = 1
log-queries-not-using-indexes

log-slow-queries, establece el lugar físico del archivo de log
long_query_time, establece a partir de que cantidad de segundos se considera lenta una query
log-queries-not-using-indexes, también logueará las queries lentas que no utilizen índices

Creamos el fichero mysq-slow-queries y ajustamos permisos


# touch /var/log/mysql-slow-queries.log
# chown mysql.root /var/log/mysql-slow-queries.log

Y reiniciamos el servidor

# /etc/init.d/mysqld stop
# /etc/init.d/mysqld start

Cuando tengamos algo de información útil en el archivo, podemos atacar directamente a las consultas más lentas, filtrandolas por la cantidad de tiempo empleado usando mysqldumpslow

# mysqldumpslow -t 10 /var/log/mysql-slow-queries.log

Actualizado: se me olvidó poner que hemos de modificar el my.cnf en el apartado [mysqld]. Gracias a Sergi de Dezain 🙂

6 thoughts on “Activar Mysql Log Slow Queries

  1. existe algun progama que tome el mysql-slow-queries.log y tire explains de cada query? sino existe estoy pensando crear uno :p
    saludos

  2. hola ruben, perdona pero me colgué con esto, la idea es revisar los queries con EXPLAIN EXTENDED “query”; estuve investigando el mysql_slow_log_parser http://www.retards.org/projects/mysql/
    y la idea es revisar los queries y que tire explains del log, y formule un informe sobre c/ query, es solo una idea con mucho para desarrollar y pensar, pero para los DBAs de MySQL sería interesante, creo
    Saludos

  3. Hola rubén quería hacerte una consulta, hay alguna forma de filtrar el mysql slow query log por base de datos? Tengo muchas bases sobre un servidor y solo quiero analizar las de una sola base

Leave a Reply

Your email address will not be published. Required fields are marked *