告警日志中看到这个信息,往往心情一沉
你应当知道
的是:
通常情况下, row cache enqueue 是一系列事件的一部分,阻塞了申请 row cache enqueue 的进程的进程很可能被另一个进程阻塞。Row cache enqueue 经常是问题的表象。
还应当知道的是:
当达到阈值会引发
"WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!" 这个消息,因此,如果未达到阈值它不会被引发。这意味着,不太严重的问题,即使具有相同的原因,也可以不输出该消息。
概念:
行缓存(Row Cache)或数据字典缓存(Data Dictionary Cache)是保存数据字典信息的共享池的内存区域。row cache 保存数据时并不是以数据块的形式,而是以行的形式。row cache enqueue 锁是在数据字典行的锁。此 enqueue 是关于特定数据字典对象的。这就是所谓的 enqueue 类型,可以在视图 V$rowcache 中找到。
缘由:
当我们试图获得 row cache 锁,这种等待事件将被使用。
当 row cache 冲突发生时,如果不能在一个预定的时间周期内得到 enqueue,将在 USER_DUMP_DEST 或 background_dump_dest 目录下生成一个跟踪文件,这取决于是用户还是后台进程创建的跟踪文件。alert.log 通常会相应的更新警告消息和跟踪文件的位置。
数据库检测到核心资源被持有太久并通知管理员,从而让这种情况可以得到解决。这也可能伴随着数据库挂起或变慢。
首要排查:
SGA 的shrink/resize
定位这种情况的方法是,有很多'SGA: allocation forcing component growth'等待事件,或 AWR 的 TOP 列表有类似等待,以及阻塞等待"WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK!" 的会话在等待'SGA: allocation forcing component growth'
或者
-
ALTER SESSION SET nls_date_format = 'YYYY-MM-DD HH24:MI:SS';
-
SET PAGESIZE 900
-
SET LINESIZE 255
-
COL COMPONENT FORMAT A30
-
COL INITIAL_SIZE FORMAT A10
-
COL FINAL_SIZE FORMAT A10
-
SPOOL asmm_resize.txt
-
select START_TIME, component, oper_type, oper_mode, initial_size/1024/1024 "INITIAL", FINAL_SIZE/1024/1024 "FINAL", END_TIME
-
from v$sga_resize_ops
-
where component in ('DEFAULT buffer cache', 'shared pool')
-
and status = 'COMPLETE'
-
order by start_time, component;
-
SPOOL OFF
row cache enqueue 类型:
DC_TABLESPACES:最可能的原因是新 extent 的分配
DC_SEQUENCES:序列缓存太少了,现在比较少见了
DC_USERS:用户授权
DC_ROLLBACK_SEGMENTS:由于 rollback 段的分配导致的
DC_AWR_CONTROL:可能是生成awr遇到问题
深入诊断:
当问题发生时,错误会记入 alert.log,并自动产生一个 systemstate dump 文件(多贴心,国产库好好学学),还需要3A报告,19c的库一个awr即可(一键三连了)。
-
col parameter for a32
-
col type for a12
-
-
select * from (select parameter,cache#,count,gets,GETMISSES from v$rowcache order by GETMISSES desc) where rownum<11
-
-
select cache#,parameter,TYPE,SUBORDINATE#,count,round(GETMISSES/GETS*100,1) miss_percent from v$rowcache where cache#=&cache;
-
示例:
参考:
故障排除:"WAITED TOO LONG FOR A ROW CACHE ENQUEUE LOCK! " (Doc ID 2016422.1)
阅读(1262) | 评论(0) | 转发(0) |