oracle常用脚本--Redo size

redo发生的总次数(以及因此写入log buffer),以byte为单位

select ss.snap_id as snap_id,
       to_char(sn.end_interval_time, 'yyyy-mm-dd hh24:mi:ss') as "snap_date",
       (sum(decode(stat_name, 'redo size', value, 0)) -
       lag(sum(decode(stat_name, 'redo size', value, 0)), 1)
        over(order by ss.snap_id)) /
       ((to_date(to_char(sn.end_interval_time, 'yyyymmddhh24miss'),
                 'yyyymmddhh24miss') -
       to_date(to_char(sn.begin_interval_time, 'yyyymmddhh24miss'),
                 'yyyymmddhh24miss')) * 24 * 60 * 60) "redo size"
  from SYS.DBA_HIST_sysstat ss, SYS.DBA_HIST_snapshot sn
 where ss.snap_id = sn.snap_id
   and ss.stat_name in ('redo size')
   and ss.dbid = sn.dbid
   and ss.instance_number = sn.instance_number
   and sn.instance_number = (select instance_number from v$instance)
   and sn.dbid = (select dbid from v$database)
   group by ss.snap_id,
          sn.begin_interval_time,
          sn.end_interval_time

 

posted @ 2017-10-31 20:18  tonnytangy  阅读(388)  评论(0编辑  收藏  举报