Anzahl der Transaktionen in SQL Server 2005 und Oracle 10g zählen

Gawan

Grünschnabel
Hallo,

ich suche ein Möglichkeit die Anzahl an Transaktionen, die eine SQL2005- bzw. eine Oracle-Datenbank innerhalb einer bestimmten Zeit verarbeitet, zu zählen.
Es sollten dabei commits, rollbacks aber auch reads berücksichtigt werden.
Kennt jemand eine Möglichkeit diese Daten aufzuzeichnen ?

Danke
 
Also für Oracle kannst du z.B. die View v$sesstat nutzen. Da sind alle zur Session verfügbaren Informationen hinterlegt, "aufzeichnen" brauchst du da gar nix, das passiert von ganz alleine. Mit einem Join über v$statname bekommst du auch raus wie die Parameter heissen.

Bsp:
Code:
SELECT v$statname.STATISTIC#, NAME, CLASS, VALUE
FROM v$sesstat JOIN v$statname
ON v$sesstat.STATISTIC# = v$statname.STATISTIC#
WHERE v$statname.STATISTIC# IN ( 4, 5, 6, 54, 58 )
AND SID = SYS_CONTEXT( 'USERENV', 'SID' )

     STATISTIC# NAME                                                                       CLASS        VALUE
--------------- ---------------------------------------------------------------- --------------- ---------------
              4 user commits                                                                   1               0
              5 user rollbacks                                                                 1               0
              6 user calls                                                                     1             719
             54 physical reads                                                                 8              40
             58 physical read bytes                                                            8          327680

Schau dir aber am besten auch mal die anderen Parameter an, denn Oracle unterscheidet z.B. die reads nach physical(von der Platte) und logical(aus dem Memory) etc...
Vom SQL Server hab ich keine Ahnung :-)
 
Zurück