Version 5.1.6 og nyere:
1. Indtast MySQL-skallen og kør følgende kommando:
set global slow_query_log = 'ON';
2. Aktiver andre ønskede muligheder. Her er nogle almindelige eksempler:
Logdetaljer for forespørgsler, der forventes at hente alle rækker i stedet for at bruge et indeks:
set global log_queries_not_using_indexes = 'ON'
Indstil stien til den langsomme forespørgselslog:
set global slow_query_log_file ='/var/log/mysql/slow-query.log';
Indstil den tid, en forespørgsel skal køre, før den logges:
set global long_query_time = 20;
(default is 10 seconds)
3. Bekræft, at ændringerne er aktive ved at indtaste MySQL-skallen og køre følgende kommando:
show variables like '%slow%';
Versioner under 5.1.6:
-
Rediger /etc/my.cnf-filen med dit foretrukne tekstredigeringsværktøjvi /etc/my.cnf
-
Tilføj følgende linje under afsnittet "[mysqld]". Du er velkommen til at opdatere stien til logfilen til hvad du vil:
log-slow-queries=/var/log/mysql/slow-query.log
3. Aktiver yderligere muligheder efter behov. Her er de samme almindeligt anvendte eksempler fra oven:
Indstil den tid, en forespørgsel skal køre, før den logges:
`long_query_time=20
(default is 10 seconds)`
Logdetaljer for forespørgsler, der forventes at hente alle rækker i stedet for at bruge et indeks:
`log-queries-not-using-indexes`
4. Genstart MySQL-tjenesten:
service mysqld restart
5. Bekræft, at ændringen er aktiv ved at indtaste MySQL-skallen og køre følgende:
show variables like '%slow%';
Opdatering:1
Ifølge MySQL-dokumenter opstår fejlen #1193, når du bruger forkert kode til SQLSTATE.
Message: Unknown system variable %s
Og som du kan se på samme side, er SQLSTATE 99003 ikke defineret.
se dette link:
http://dev.mysql.com/doc /refman/5.5/da/slow-query-log.html
http://dev.mysql.com/doc /refman/5.1/da/slow-query-log.html