Skocz do zawartości
Zaloguj się, aby obserwować  
Glibnes

Problem z ustawieniem long_query_time

Polecane posty

Mam problem z ustawieniem zmiennej log-queries-not-using-indexes.

Ogólnie potrzebuję znaleźć zapytania, które wykonują się z JOINami ale te są przeprowadzane bez Indexów (szukam ich wg. zaleceń mysqltunera).

Tak ustawiłem swój plik my.cnf dla wolnych zapytań i zapytań bez indexów:

 

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

long_query_time = 10000000

log-queries-not-using-indexes

 

A w logu mam przykładowo takie wpisy:

# Time: 111005 17:26:01

# Query_time: 0.000174 Lock_time: 0.000035 Rows_sent: 71 Rows_examined: 71

SELECT * FROM tabela1;

(...)

# Query_time: 0.001019 Lock_time: 0.000046 Rows_sent: 1 Rows_examined: 302

SELECT COUNT(`id`) FROM tabela2 WHERE `onlinetime` >= (UNIX_TIMESTAMP() - 900);

 

Jak widać, log jest czuły nawet na głupie zapytania pobierające np. listę użytkowników online.

Czy jest jakiś sposób żeby do logu zapisywały się zapytania tylko z JOINami bez indexów?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Mam problem z ustawieniem zmiennej log-queries-not-using-indexes.

Ogólnie potrzebuję znaleźć zapytania, które wykonują się z JOINami ale te są przeprowadzane bez Indexów (szukam ich wg. zaleceń mysqltunera).

Tak ustawiłem swój plik my.cnf dla wolnych zapytań i zapytań bez indexów:

 

 

 

A w logu mam przykładowo takie wpisy:

 

 

Jak widać, log jest czuły nawet na głupie zapytania pobierające np. listę użytkowników online.

Czy jest jakiś sposób żeby do logu zapisywały się zapytania tylko z JOINami bez indexów?

 

grep JOIN /var/log/mysql/mysql-slow.log nie wystarczy? ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

grep JOIN /var/log/mysql/mysql-slow.log nie wystarczy? wink.png

 

Ja szukam tylko zapytań z JOINami na polach bez indexów, a nie wszystkich.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ja szukam tylko zapytań z JOINami na polach bez indexów, a nie wszystkich.

 

http://www.xaprb.com/blog/2009/08/18/how-to-find-un-indexed-queries-in-mysql-without-using-the-log/

 

Tu masz metodę, która pomoże Ci to sprawdzić nieco na około, natomiast całkowicie wykluczając zapytania, które wpadły by do slow-loga, mimo, że używają indeksów.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się

Zaloguj się, aby obserwować  

×