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;