如何在Oracle中查询事务计数
发布时间:2023-02-17 09:25:05 所属栏目:Oracle 来源:互联网
导读:如何在Oracle中查询事务计数 数据库扩展期间可能需要的脚本。计算两个特定日期之间的交易编号。 该脚本已在11gR1和11gR2中进行了测试。在生产环境中运行脚本之前,请在测试服务器上对其进行测试。 SELECT BEGIN_TIME, END_TIME, TXNCOUNT, ( (END_TIME - BEG
如何在Oracle中查询事务计数 数据库扩展期间可能需要的脚本。计算两个特定日期之间的交易编号。 该脚本已在11gR1和11gR2中进行了测试。在生产环境中运行脚本之前,请在测试服务器上对其进行测试。 SELECT BEGIN_TIME, END_TIME, TXNCOUNT, ( (END_TIME - BEGIN_TIME) * 24 * 60 * 60) DIFFSECOND, TO_CHAR ( (TXNCOUNT / ( (END_TIME - BEGIN_TIME) * 24 * 60 * 60)), '999999.99') TRANXPERSECOND FROM V$UNDOSTAT WHERE BEGIN_TIME >= TO_DATE('20.09.2014 00:00','DD.MM.YYYY HH24:MI') AND BEGIN_TIME <= TO_DATE('25.09.2014 00:00','DD.MM.YYYY HH24:MI') AND (TXNCOUNT / ( (END_TIME - BEGIN_TIME) * 24 * 60 * 60)) > 50 ORDER BY 1; 以下查询可用于在Oracle数据库中查找事务计数。 Oracle中每天的平均交易数 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); 每日平均提交次数 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); 最近24小时的交易计数 SELECT 'DATABASE', 'TOPLAM TRANSACTION - 24 SAAT', TO_CHAR (MAX (NEXT_CHANGE#) - MIN (FirsT_CHANGE#),'9,999,999') VALUE FROM V$LOG_HISTORY WHERE TO_DATE (FirsT_TIME, 'DD/MM/RR HH24:MI:SS') > Trunc (SYSDATE, 'HH24') - 1; (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |