Enqueue 是一种保护共享资源的锁定机制,避免因并发操作而损坏数据,Enqueue 采用排队机制,即 FIFO(先进先出)来控制资源的使用。在任何需要读取控制文件的动作时,就会发生等待事件enq: CF – contention,CF locks被用来串行化controlfile事务,在读和写控制文件的时候使用该锁。通常该锁的分配时间非常短,比如在下面事件中会分配该锁,那么也就可能发生enq: CF – contention等待事件:

lCheckpoint

lRedo Logfile的切换

lRedo lofileg的归档

l执行实例恢复

l操作redo logfile

l热备开始和结束

lNologging 事物的DML操作

如果某个事物设置了nologging属性,那么如下动作更容易产生该等待事件:

direct load (SQL*Loader)

direct-load INSERT

CREATE TABLE ... AS SELECT

CREATE INDEX

ALTER TABLE ... MOVE PARTITION

ALTER TABLE ... SPLIT PARTITION

ALTER INDEX ... SPLIT PARTITION

ALTER INDEX ... REBUILD

ALTER INDEX ... REBUILD PARTITION

INSERT, UPDATE, and DELETE on LOBs in   NOCACHE NOLOGGING mode stored out of line

查询该等待事件的holder

select l.sid, p.program, p.pid, p.spid,   s.username, s.terminal, s.module, s.action, s.event, s.wait_time,   s.seconds_in_wait, s.state

from v$lock l, v$session s, v$process p

where l.sid = s.sid

and s.paddr = p.addr

and l.type='CF'

and l.lmode >= 5;

查询该等待事件的waiter

select l.sid, p.program, p.pid, p.spid,   s.username, s.terminal, s.module, s.action, s.event, s.wait_time,   s.seconds_in_wait, s.state

from v$lock l, v$session s, v$process p

where l.sid = s.sid

and s.paddr = p.addr

and l.type='CF'

and l.request >= 5;

原因分析及解决办法:

如果holder是后台进程,比如lgwr,ckpt,arcn等,那么检查redo log大小,切换频次,检查fast_start_mttr_target的设置,检查归档路径是否可用。

如果是holder是前台进程,那么大都是由于nologging的事物上正在发生DML或者DDL,此时由于nologging属性,那么oracle需要向控制文件中记录unrecoverable SCN,典型的是伴随enq: CF – contention的通常还有control file parallel write,这个会话在写的过程中持有CF locks,其它会话如果也要更新控制文件的话,那么就要等待了。

oracle cf enqueue,oracle等待事件之enq: CF – contention相关推荐

  1. 等待事件之enq: HW - contention

    等待事件之enq: HW - contention SELECT *   FROM V$EVENT_NAME  WHERE NAME  IN        ('enq: HW - contention ...

  2. oracle enq ta,【案例】Oracle等待事件event enq: KO - fast object checkpoint解决办法

    [案例]Oracle等待事件event enq: KO - fast object checkpoint解决办法 时间:2016-11-03 10:11   来源:Oracle研究中心   作者:HT ...

  3. oracle commit_log,Oracle log file sync 等待事件 与 COMMIT_WAIT,COMMIT_LOGGING 参数说明

    在Oracle 数据库中,log file sync是一个非常常见的等待事件,导致该事件的原因主要有2个因素:一是commit提交过于频繁,二是redo log 对应的IO根不上. 所以对于log f ...

  4. oracle的reliable message等待事件

    生产环境在上线前进行了插入测试,结果最开始的结果在50000iops左右,但随后测试数据下降到10000左右. 查看awr报告发现是等待事件:reliable message. 查询文档,确认需要确认 ...

  5. oracle中enqueue,ORACLE: Enqueue 烂笔头

    Oracle 的enqueue 包含以下模式: 模式代码 解释 1 Null mode 2 Sub-Share 3 Sub-Exclusive 4 Share 5 Share/Sub-Exclusiv ...

  6. 初次遇见等待事件:enq;tx-row lock contention

    该事件排在top 10的第二位,也就是说系统中在这1小时里出现了严重的行级锁等待事件. 产生这种等待事件的原因有以下几种: 1.不同的session更新或删除同一条记录: 2.唯一索引有重复索引: 3 ...

  7. 【等待事件】序列等待事件总结(enq: SQ - contention、row cache lock、DFS lock handle和enq: SV - contention)...

    [等待事件]序列等待事件总结(enq: SQ - contention.row cache lock.DFS lock handle和enq: SV - contention) [等待事件]序列等待事 ...

  8. enq: PS - contention

    测试环境中发现一个进程长时间占用12.7%cpu Name              PID    CPU%  PgSp Owner oracle       557222     12.7   78 ...

  9. 【故障解决】enq: PS - contention

    [故障解决]enq: PS - contention [故障解决]enq: PS - contention 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读和注意事项 各位技术爱好 ...

最新文章

  1. Java 对象和类 的理解
  2. linux sersync2 ssh start=true,rsync+nfs+sersync实战案例
  3. 《Python编程从入门到实践》学习笔记8(第9章:类)
  4. ![CDATA[ ]]
  5. php文件教程,php的文件上传入门教程(实例讲解)
  6. php join a.id b.id,mysql求助 请问where a.id=b.id 和join on a.id=b.id 在效率上的区别
  7. 将字符串String str= “abc god 中国 java“ 反转每个单词 结果: “cba dog 国中
  8. 包含对流环热,热流边界,等温边界的稳态热传导方程的FEM求解。
  9. Apache Cassandra 在 Facebook 的应用
  10. 第二章 XHTML简介
  11. calling c++ from golang with swig--windows dll(一)
  12. 算法学习(二)快速排序(下)
  13. mysql游戏调整等级_mysql求游戏排名
  14. 5分钟搞定!java免费源码网站
  15. ETL调度工具 taskctl-> Designer 设计IDE环境
  16. unity3d游戏3dRPG角色扮演完整项目源码分享
  17. 洛谷再分肥宅水c语言,【菜鸟进阶之路】P5706【深基2.例8】再分肥宅水 - 洛谷
  18. 日期格式化在高并发场景下的解决方案
  19. 编译原理-18-语法分析实验代码示例
  20. 18650圆柱锂电池comsol5.6模型 参数已配置,电化学生热研究,三种放电倍率,

热门文章

  1. 【B612】有趣的网站、文库
  2. android 下雪动画,自定义下雪动画(上)
  3. 基于Wemos D1的开发基础
  4. create table ,create table as 与create like三种建表方式的使用详解
  5. 【Java】浅谈关于代码的耦合性
  6. 正态性检验(偏度和峰度)python
  7. JS 入门教程-01-js入门案例
  8. 面试干货4——你对Java类加载器(自定义类加载器)有了解吗?
  9. Google Earth 去除标签的方法
  10. Element框架之Form