1. 程式人生 > >查詢每秒平均事務數

查詢每秒平均事務數

1.直接查詢檢視 select * from DBA_HIST_SYSMETRIC_SUMMARY where metric_unit = 'Transactions Per Second' METRIC_NAME 監控指標 METRIC_UNIT 監控單位 INTSIZE 取樣長度(釐秒),一般是360000 NUM_INTERVAL 觀察間隔(分鐘),一般是60 AVERAGE 監控時間段內的平均值 --查詢一段時間內的平均每秒事務數 select instance_number, metric_unit, trunc(begin_time) time, round(avg(average), 2) average from DBA_HIST_SYSMETRIC_SUMMARY where metric_unit = 'Transactions Per Second' and begin_time >= to_date('2014-08-04 08:00:00', 'yyyy-mm-dd hh24:mi:ss') and end_time <= to_date('2014-08-08 23:00:00', 'yyyy-mm-dd hh24:mi:ss') group by instance_number, metric_unit, trunc(begin_time) order by instance_number; --事務數每秒大概在20-25之間 查詢一段時間內的平均每天事務數,只要將平均每秒事務數*60^60*24即可。 2.查詢AWR報告也可以。 3.--下面指令碼,分別在兩個時間點執行,相減可以得到某個使用者commit的次數,即事務數 select s.USERNAME,sum(se.VALUE) "session transaction number",sum(sy.VALUE) " database transaction number" from v$session s,v$sesstat se,v$sysstat sy where s.sid=se.SID and se.STATISTIC#=sy.STATISTIC# and sy.NAME='user commits' and s.USERNAME=upper('&username') group by s.USERNAME;