Oracle故障处理之归档日志突发增

僤鯓⒐⒋嵵緔 提交于 2019-11-29 06:56:11

Oracle可以将Redo Log联机日志文件保存到多个不同的位置,将联机日志转换为归档日志的过程称之为归档,相应的日志被称为归档日志。归档日志可以用来恢复数据库,因此它记录着数据库的各种操作。

如果我们需要记录某个操作消耗多少REDO,可以通过如下方式:

SQL> select name,value from (select b.name,a.value from v$mystat a,v$statname b where a.STATISTIC#=b.statistic#) where  name='redo size' or name like 'undo change%';
NAME                                                                  VALUE
---------------------------------------------------------------- ----------
redo size                                                                 0
undo change vector size                                                   0

SQL> select * from test; 
A
----------
 
SQL> insert into test select rownum from dual connect by rownum<=10; 
10 rows inserted

SQL> commit;
Commit complete

SQL> select name,value from (select b.name,a.value from v$mystat a,v$statname b where a.STATISTIC#=b.statistic#) where  name='redo size' or name like 'undo change%'; 
NAME                                                                  VALUE
---------------------------------------------------------------- ----------
redo size                                                               576
undo change vector size                                                 156

SQL> select 576-0 as redo_size_insert_change,156-0 as undo_size_insert_change from dual;
REDO_SIZE_INSERT_CHANGE UNDO_SIZE_INSERT_CHANGE
----------------------- -----------------------
                    576                     156

如果突然监控到有大量归档日志生成(进行时),该如何查询问题来源?可以参考如下方法:

create table t1 as select sid,value,NAME,sysdate as chkdt from  v$sesstat a,v$statname b where a.STATISTIC#=b.STATISTIC# and b.CLASS=2;

<监控一段时间,比如1分钟、10分钟>

create table t2 as select sid,value,NAME,sysdate as chkdt from  v$sesstat a,v$statname b where a.STATISTIC#=b.STATISTIC# and b.CLASS=2;

# 对比前后差异
select t1.SID,t1.NAME,sum((t2.VALUE-t1.VALUE)/(t2.CHKDT-t1.CHKDT)) from t1,t2 where t1.sid=t2.sid and t1.name=t2.name and t1.name in ('redo size','redo entries') group by t1.sid,t1.name order by 2,3;

如果突然监控到有大量归档日志生成,但远程维护已经停止生成,该如何查询问题来源?可以参考如下方法:
auto_logmnr.sql

在这里插入图片描述
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!