mysql: Slowquery untersuchen
bearbeitet von Rolf BHallo Forum,
um meine Webanwendung nicht durch Engpässe auszubremsen, logge ich Scripte und Queries mit, die zu langsam sind. Leider habe ich bei meinem Provider keinen Slowquery-Log zur Verfügung, daher behelfe ich mir mit
~~~PHP
$start = microtime(true);
$result_query=mysqli_query($verbindung,$query_string);
$end = microtime(true);
~~~
Nun fällt hier ab und an eine Query in den Log, die bis zu 20 Sekunden dauert. Immer dieselbe query…
Führe ich diese dann aber im phpmyadmin aus, benötigt sie immer unterhalb 0,2 Sek.
Darüber hinaus ist die Query eine ganz simple Abfrage ala
~~~PHP
select a,b FROM Table where Art="Z" AND ID="60829" AND B_Art="FF" ORDER BY ID DESC LIMIT 0, 1
~~~
Ein `EXPLAIN` bringt für mich auch keine wesentlichen Erkenntnisse:
~~~PHP
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE Table index NULL PRIMARY 4 NULL 1 Using where
~~~
Diese Abfrage wird zwar innerhalb einer Schleife bis zu 30 mal aufgerufen, aber das sollte doch machbar sein…
Warum taucht sie so oft als Slowquery bei mir auf oder wie gehe ich das Problem an?
Sie läuft auf einem Managed Server, aber im shared webhosting Bereich.
Pit
mysql: Slowquery untersuchen
bearbeitet von PitHallo Forum,
um meine Webanwendung nicht durch Engpässe auszubremsen, logge ich Scripte und Queries mit, die zu langsam sind. Leider habe ich bei meinem Provider keinen Slowquery-Log zur Verfügung, daher behelfe ich mir mit
~~~PHP
$start = microtime(true);
$result_query=mysqli_query($verbindung,$query_string);
$end = microtime(true);
~~~
Nun fällt hier ab und an eine Query in den Log, die bis zu 20 Sekunden dauert. Immer dieselbe query…
Führe ich diese dann aber im phpmyadmin aus, benötigt sie immer unterhalb 0,2 Sek.
Darüber hinaus ist die Query eine ganz simple Abfrage ala
~~~PHP
select a,b FROM Table where Art="Z" AND ID="60829" AND B_Art="FF" ORDER BY ID DESC LIMIT 0, 1
~~~
Ein `EXPLAIN` bringt für mich auch keine wesentlichen Erkenntnisse:
~~~PHP
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE Table index NULL PRIMARY 4 NULL 1 Using where
~~~
Diese Abfrage wird zwar innerhalb einer Schleife bis zu 30 mal aufgerufen, aber das sollte doch machbar sein…
Warum taucht sie so oft als Slowquery bei mir auf oder wie gehe ich das Problem an?
Es läuft auf einem Managed Server, aber im shared webhosting Bereich.
Pit