sql >> Databasteknik >  >> RDS >> Mysql

Hur aktiverar jag MySQL långsamma frågelogg?

Version 5.1.6 och senare:

1. Ange MySQL-skalet och kör följande kommando:

set global slow_query_log = 'ON';

2. Aktivera andra önskade alternativ. Här är några vanliga exempel:

Logginformation för frågor som förväntas hämta alla rader istället för att använda ett index:

   set global log_queries_not_using_indexes = 'ON'

Ange sökvägen till den långsamma frågeloggen:

  set global slow_query_log_file ='/var/log/mysql/slow-query.log';

Ange hur lång tid en fråga behöver köras innan den loggas:

   set global long_query_time = 20;
     (default is 10 seconds)

3. Bekräfta att ändringarna är aktiva genom att ange MySQL-skalet och köra följande kommando:

show variables like '%slow%';

Version under 5.1.6:

  1. Redigera filen /etc/my.cnf med din favorittextredigerarevi /etc/my.cnf

  2. Lägg till följande rad under avsnittet "[mysqld]". Uppdatera gärna sökvägen till loggfilen till vad du vill:

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

3. Aktivera ytterligare alternativ efter behov. Här är samma vanliga exempel från ovan:

Ange hur lång tid en fråga behöver köras innan den loggas:

  `long_query_time=20
  (default is 10 seconds)`

Logginformation för frågor som förväntas hämta alla rader istället för att använda ett index:

 `log-queries-not-using-indexes`

4. Starta om MySQL-tjänsten:

service mysqld restart

5. Bekräfta att ändringen är aktiv genom att gå in i MySQL-skalet och köra följande:

show variables like '%slow%';

Uppdatering:1

Enligt MySQL-dokument uppstår felet #1193 när du använder fel kod för SQLSTATE.

Message: Unknown system variable %s

Och som du kan se på samma sida är SQLSTATE 99003 inte definierad.

se denna länk:

http://dev.mysql.com/doc /refman/5.5/en/slow-query-log.html

http://dev.mysql.com/doc /refman/5.1/en/slow-query-log.html



  1. Orbeon Forms Postgres DB-anslutning

  2. freeTDS använder inte sin konfiguration

  3. Hur ORD() fungerar i MariaDB

  4. Vad är CHAR_LENGTH() i MySQL?