Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak włączyć dziennik powolnych zapytań MySQL?

Wersja 5.1.6 i nowsze:

1. Wejdź do powłoki MySQL i uruchom następujące polecenie:

set global slow_query_log = 'ON';

2. Włącz wszelkie inne żądane opcje. Oto kilka typowych przykładów:

Szczegóły dziennika dla zapytań, które mają pobierać wszystkie wiersze zamiast korzystać z indeksu:

   set global log_queries_not_using_indexes = 'ON'

Ustaw ścieżkę do dziennika powolnych zapytań:

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

Ustaw czas, przez który zapytanie musi zostać uruchomione, zanim zostanie zarejestrowane:

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

3. Potwierdź, że zmiany są aktywne, wchodząc do powłoki MySQL i uruchamiając następujące polecenie:

show variables like '%slow%';

Wersje poniżej 5.1.6:

  1. Edytuj plik /etc/my.cnf swoim ulubionym edytorem tekstuvi /etc/my.cnf

  2. Dodaj następujący wiersz w sekcji „[mysqld]”. Możesz dowolnie zaktualizować ścieżkę do pliku dziennika:

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

3. W razie potrzeby włącz dodatkowe opcje. Oto te same powszechnie używane przykłady powyżej:

Ustaw czas, przez który zapytanie musi zostać uruchomione, zanim zostanie zarejestrowane:

  `long_query_time=20
  (default is 10 seconds)`

Szczegóły dziennika dla zapytań, które mają pobierać wszystkie wiersze zamiast korzystać z indeksu:

 `log-queries-not-using-indexes`

4. Uruchom ponownie usługę MySQL:

service mysqld restart

5. Potwierdź, że zmiana jest aktywna, wchodząc do powłoki MySQL i uruchamiając następujące polecenie:

show variables like '%slow%';

Aktualizacja:1

Zgodnie z dokumentacją MySQL, błąd #1193 pojawia się, gdy używasz niewłaściwego kodu dla SQLSTATE.

Message: Unknown system variable %s

Jak widać na tej samej stronie, SQLSTATE 99003 nie jest zdefiniowany.

odnieś się do tego linku:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel - Paginate Rekordy losowe

  2. Jak przywrócić plik SQL wygenerowany przez MySQLDump za pomocą wiersza poleceń?

  3. Normalizuj wszystkie znaki UTF8 do najbardziej standardowego formatu

  4. Wybierz rekordy z dzisiaj, w tym tygodniu, w tym miesiącu php mysql

  5. Automatyczne wycofanie, jeśli TRANSAKCJA ZATWIERDZENIE nie zostanie osiągnięta