Dove posso trovare il registro lento mysql?


24

Proprio come dice il titolo, dove posso vederlo?

Ci sono opzioni di configurazione per esso (come quanti ms determinerebbero se una query è lenta o no)?

Risposte:


22

Puoi trovarlo nella directory predefinita, a seconda della tua installazione. Ad esempio, sul mio Red Hat, è / var / log / mysql /

Il tempo di query è il tempo, in secondi, durante il quale dovrebbe iniziare la registrazione. Questo può essere fatto all'avvio e in fase di esecuzione.

log-slow-queries = /var/log/mysql/mysql-slow.log

long_query_time = 1


4
Sul mio sito, ho scoperto che qualcuno ha impostato log_slow_queries = ON. Quindi ho un file nel mio datadir chiamato ON contenente il registro. Era confuso ...
Gaius,

6
Si noti che le query log-slow sono obsolete a partire dalla 5.1.29. Quello da utilizzare in seguito è il registro delle query lente.
Riedsio,

1
Inoltre, a partire da MySQL 5.1.21, quando si accede a un file è supportata una risoluzione di microsecondi.
Riedsio,


7

Queste sono le opzioni (e le impostazioni) pertinenti che generalmente ho / uso in tutte le mie applicazioni my.cnfper registrare query lente:

log_output=FILE
slow_query_log=1
slow_query_log_file=/var/log/mysql/mysql.slow 
long_query_time=0.001 
log-queries-not-using-indexes=0

Tieni presente che per long_query_time ,

A partire da MySQL 5.1.21 ... quando si accede a un file è supportata una risoluzione di microsecondi.


3

Cerca il tuo file di configurazione mysqld (di solito, /etc/my.cnf)

Al tuo guscio:

grep slow /etc/my.cnf

2

Ecco qualcosa da considerare anche:

Se usi l'opzione

log-output=TABLE

nel tuo file /etc/my.cnf, cerca che il registro lento sia una tabella basata sul motore di archiviazione CSV situata, tra tutti i punti, nello schema mysql.

Ciò influisce anche sul registro generale, una volta abilitato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.