Seite 1 von 1

PHP Query Laufzeiten analysieren

Verfasst: 02.12.2007, 16:49
von Fox Mulder
Moin,

wie kann ich in PHP Scripten die Laufzeiten der einzelnen MySql Queries darstellen.
Gibts da eine Art Debug Mode?

Gruss

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 02.12.2007, 19:05
von mm
Es gibt in MySQL die Systemvariable "Last_query_cost", welche die Kosten der letzten SQL-Anfrage anzeigt, wie sie per Optimierer bestimmt wurde. Damit kann man mehrere Befehlsformulierungen vergleichen.

Direkt in PHP würde ich vor und nach der SQL-Anfrage die Zeit bestimmen und die Differenz ausgeben.

Ich habe auch einmal von einer SQL-Funktion BENCHMARK() in MySQL gelesen, selbst aber noch nicht ausprobiert.

Ich hoffe, das hilft vielleicht schon weiter.

Verfasst: 06.12.2007, 15:57
von Hasenhuf
mm hat geschrieben:Direkt in PHP würde ich vor und nach der SQL-Anfrage die Zeit bestimmen und die Differenz ausgeben.
Wenn die Auflösung reicht. Was besseres als microtime() gibt es doch nicht oder? Wiederholungen von Befehlen sind nicht immer aussagekräftig.

Verfasst: 06.12.2007, 19:08
von Southmedia
Nur ein Stichwort: xdebug

Verfasst: 06.12.2007, 19:21
von net(t)worker
Hasenhuf hat geschrieben:Was besseres als microtime() gibt es doch nicht oder?
naja... wenn du mit microtime() keine zeit bestimmen kannst ist es doch eh schnell genug...

wenn man testläufe mit mysql abfragen macht, sollte man aber für den test schon dafür sorgen das die tabellen eine realistische Größe haben, den davon ist die Laufzeit stark abhängig.... mal eben mit 1.000 Datensätzen testen sagt absolut nix darüber aus wie lange die abfrage mit 1.000.000 Datensätzen dauert....