Oracle veritabanındaki transaction sayıları
Oracle veritabanındaki transaction sayılarının tespiti için aşağıdaki sorgular kullanılabilir.
Günlük ortalama işlem sayıları :
SELECT V1 "Total Commits",
V2 "Total Rollbacks",
V3 "Total User Calls",
T1 "Uptime in days",
S1 / T1 "Avg Daily DML Transactions",
V3 / T1 "Avg Daily User Calls"
FROM (SELECT VALUE V1
FROM V$SYSSTAT
WHERE NAME = 'user commits'),
(SELECT VALUE V2
FROM V$SYSSTAT
WHERE NAME = 'user rollbacks'),
(SELECT SUM (VALUE) S1
FROM V$SYSSTAT
WHERE NAME IN ('user commits', 'user rollbacks')),
(SELECT VALUE V3
FROM V$SYSSTAT
WHERE NAME = 'user calls'),
(SELECT SYSDATE - STARTUP_TIME T1 FROM V$INSTANCE);
Günlük ortalama commit sayıları :
SELECT (V1 + V2) / T1 "Avg Daily DML Transactions",
V1 "User Commit",
V2 "User Rollback"
FROM (SELECT VALUE V1
FROM V$SYSSTAT
WHERE NAME = 'user commits'),
(SELECT VALUE V2
FROM V$SYSSTAT
WHERE NAME = 'user rollbacks'),
(SELECT SYSDATE - STARTUP_TIME T1 FROM V$INSTANCE);
Son 24 saat içindeki işlem sayısı :
SELECT 'DATABASE',
'TOPLAM TRANSACTION - 24 SAAT',
TO_CHAR (MAX (NEXT_CHANGE#) - MIN (FIRST_CHANGE#), '9,999,999,999') VALUE
FROM V$LOG_HISTORY
WHERE TO_DATE (FIRST_TIME, 'DD/MM/RR HH24:MI:SS') > TRUNC (SYSDATE, 'HH24') - 1;
![]()
