English |
SqlStat ist ein Kornshell Script und dient der Performace Analyse von Informix Datenbank Servern. Es eignet sich zur ersten Übersicht über die Lastverhältnisse großer Datenbankserver aufgeschlüsselt nach SQL Statements.
Es wird unter der
Aufruf:
SqlStat [ nsamples [ sleep-secs-per-sample [ nrepetitions ] ] ] oder: SqlStat -h
nsamples: | Anzahl Stichproben |
sleep: | Anzahl Sekunden zwischen zwei Stichproben |
nrepetitions: | Anzahl Widerholungen, die ein neues Output Directory erzeugen (default 1) |
Die Gesamtlaufzeit ist (nsamples * sleep-secs-per-sample * nrepetitions) Sekunden. Als Ergebnis wird ein Directory namens erg.<hh:mm:ss> erzeugt, in dem die stichprobenartig gewonnenen SQL Statements gewichtet nach der Last, die sie im Server erzeugten, gelistet sind. (Falls nrepetitions angegeben wurde, wird ein Directory für jede Widerholing erzeugt.) Für jedes Statement gibt es eine Datei, die die Anzahl Stichproben dieses Statements im Dateinamen <samples>.<something> enthält. Zum Beispiel:
$ SqlStat 120 1 $ cd erg.15:25:37 $ ls -l total 20 -rw-r--r-- 1 michaelm users 1231 Jul 21 21:27 00013.35489_1 -rw-r--r-- 1 michaelm users 1750 Jul 21 21:27 00018.16460_1 -rw-r--r-- 1 michaelm users 7726 Jul 21 21:27 00083.16476_1 -rw-r--r-- 1 michaelm users 82 Jul 21 21:27 INFO $ cat INFO Wed Jul 21 15:25:37 CEST 2004 Wed Jul 21 15:27:51 CEST 2004 114 non empty samples $ head -7 00083.16476_1 Current SQL statement : update t3 set c = 1 @ 21.07.21:25, ses 28, user michaelm, pid 5150, host m1, fe testpg1 ready 1cpu sqlexec @ 21.07.21:25, ses 29, user michaelm, pid 5147, host m1, fe testpg1 ready 1cpu sqlexec $ head -7 00013.35489_1 Current SQL statement : select tabid from syscolumns @ 21.07.21:25, ses 21, user michaelm, pid 5121, host m1, fe testpg2 running 3cpu sqlexec @ 21.07.21:26, ses 21, user michaelm, pid 5121, host m1, fe testpg2 running 3cpu sqlexec
Das bedeutet, daß z.B. Statement "update t3 set c = 1" 83 von 114 mal beobactet wurde und 83/114 = 72.8% der Last erzeugt hat. Außerdem werden weitere Informationen, wie thread state, thread name, session id, und pid protokolliert.