No więc chce się troszkę pobawić w optymalizację mojego projektu. Do configu mysql dodałem wpis
Kod
log-slow-queries=c:/slowqueries.log
uruchamiam mysql z odpowiednim parametrem
Kod
net start mysql --log-queries-not-using-indexes
plik się utworzył, ale niestety nic się do niego nie zapisuje, co jeszcze trzeba zrobić ?
Pozdrawiam
tomeksobczak
18.06.2008, 19:20:56
zadać takie query
Tak naprawdę jeżeli nie popełniłeś, żadnego błędu i nic tam nie wskakuje to tylko się cieszyć. Poza tym jest parametr (long_query_time) określający w sekundach kiedy query jest traktowane jako long (domyślnie jest chyba 10 z tego co pamiętam).
Co do drugiej opcji to możesz spróbować zadać query które nie wykorzysta indeksu, żeby sprawdzić czy naprawdę tam wszystko wpada.
zzeus
18.06.2008, 19:26:32
No właśnie chodzi o to że zadaje takie query i nie ma go zapisanego
tomeksobczak
18.06.2008, 19:31:07
a ustawia dobrze opcję log-queries-not-using-indexes?
Kod
mysql> show variables like 'log%';
zzeus
18.06.2008, 19:37:10
No właśnie do tego doszedłem że nie
Kod
log_queries_not_using_indexes OFF log_slow_queries ON
tomeksobczak
18.06.2008, 20:15:32
spróbuj to wpisać w plik konfiguracyjny zamiast dodawać do linii poleceń
zzeus
18.06.2008, 20:16:22
wpisałem, i dalej nic
tomeksobczak
18.06.2008, 20:25:27
jesteś pewny, że nie ma literówki? bo jeżeli jest w cfg to powinno działać bezproblemowo
zzeus
18.06.2008, 20:34:24
No udało się, teraz jest włączone, ale dalej nic nie zapisuje do pliku :/ Znaczy się nie zapisuje zapytań, bo nagłówek jest jakiś wstawiany
tomeksobczak
18.06.2008, 21:19:27
poczytaj o long-log-format czy jakos tak, moze to pomoze
zzeus
18.06.2008, 21:41:15
Hehe w końcu udało mi się rozwiązać problem. Otóż standardowo logi zapisywane są w bazie danych 'mysql' w tabeli 'slow_log'. Aby to zmienić trzeba dodać w configu następujące wpisy