¿Por qué no existe el registro de consultas lentas de MySQL?

¿Por qué no existe el registro de consultas lentas de MySQL?

Hoy estuve buscando en mi servidor CentOS un registro de consultas lentas de MySQL, pero no tuve suerte de encontrarlo. Incluso hice una prueba "SELECT SLEEP(2)" con la esperanza de crear este archivo. Tome nota, no soy muy experto en servidores, por lo que se agradece cualquier ayuda.

 7
  8 [mysql.server]
  9 user=mysql
 10 basedir=/var/lib
 11
 12 [mysqld]
 13 long_query_time = 1
 14 log_slow_queries=/var/log/mysql_slow_queries.log
 15 log=/var/log/mysql.query.log
 16
 17 ## FINE TUNING ##
 18
 19 key_buffer              = 16M
 20 max_allowed_packet      = 16M
 21 thread_stack            = 128K
 22 thread_cache_size       = 8
 23 query_cache_limit       = 1M
 24 query_cache_size        = 16M
 25
 26 [mysqld_safe]
 27 log-error=/var/log/mysqld.log
 28 pid-file=/var/run/mysqld/mysqld.pid
 29 safe-show-databases

Como puede ver, la ruta muestra: /var/log/mysql_slow_queries.log, pero este archivo no se encuentra por ningún lado. Sin embargo, encontré mysql.query.log y mysqld.log bien en el directorio. ¿Por qué no existe mi archivo MySQL Slow Queries?

Respuesta1

Una vez que haya realizado los cambios en su my.cnfarchivo, debe reiniciar el servicio MySQL. No estoy seguro de en qué sistema está, pero normalmente service mysqld restartfuncionará o service mysql restartsimplemente mire /etc/init.d/.

Además, asegúrese de que el archivo esté creado y disponible en el disco:

touch /var/log/mysql_slow_queries.log
chown mysql:mysql /var/log/mysql_slow_queries.log

Además, en las bases de datos el tiempo no es tan importante sino en consultas sin índices. Considere agregar lo siguiente a su my.cnf. Por supuesto, reinicia MySQL una vez que lo hagas:

log-queries-not-using-indexes

Respuesta2

toque /var/log/mysql_slow_queries.log

chown mysql: mysql

y reinicie su servicio mysql

mysql -u -pmycontraseña

seleccione dormir (60);

gato /var/log/mysql_slow_queries.log

/usr/sbin/mysqld, Version: 5.5.28-log (Source distribution). started with:
Tcp port: 3306  Unix socket: /var/run/mysql/mysql.sock
Time                 Id Command    Argument
# Time: 130904 23:22:14
# User@Host: root[root] @ localhost []
# Query_time: 60.002284  Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 0
SET timestamp=1378329734;
select sleep(60);

Respuesta3

agregue slow_query_log=1a la [mysqld]sección de my.cnfy reinicie mysqld.

Respuesta4

Tenga en cuenta que, en Centos 7, de forma predeterminada y sin reiniciar MySQL, el registro de consultas lentas está habilitado en esta posición:

/var/lib/mysql/$HOSTNAME.log

Consulte las otras respuestas para descubrir cómo aplicar su configuración persistente y cómo moverla a otra posición.

información relacionada