High waits on control file sequential read (文档 ID 2277867.1)

In case we run into an issue where control file sequential read is the top event on the AWR report and we cannot see I/O issues on tablespace stats.

Example:

Tablespace IO Stats
ordered by IOs (Reads + Writes) desc
Tablespace Reads Av Rds/s Av Rd(ms) Av Blks/Rd 1-bk Rds/s Av 1-bk Rd(ms) Writes Writes avg/s Buffer Waits Av Buf Wt(ms)
SYSAUX 23,798 3 0.33 1.00 1,247 3.30 0 0 0 0.00
SYSTEM 13,242 2 0.27 1.00 155 1.84 0 0 0 0.00

Top 10 Foreground Events by Total Wait Time

Event Waits Total Wait Time (sec) Wait Avg(ms) % DB time Wait Class
DB CPU 172.9 46.3
control file sequential read 91,690 48.5 1 13.0 System I/O >>>>> almost 50% of db time!
gc current block busy 13 35 2692 9.4 Cluster

The control file sequential read Oracle metric indicates the process is waiting for blocks to be read from a control file. This happens in many cases. For example, while:

making a backup of the controlfiles -- rman in process
sharing information (between instances) from the controlfile -- RAC system
reading other blocks from the controlfiles
reading the header block

Because the controlfile contains the SCN's for the last transactions, the controlfiles are constantly being updated. Normally, the I/O associated with the controlfile is small, but you can see high controlfile waits in the following circumstances:

High DML periods - The controlfiles are continuously updated during DML (update) activity.
Conflicting DML - One common cause of high controlfile write waits is running batch updates while running an Oracle backup.
Bad disk placement - Placing several copies of a controlfile on the same disk platter can cause disk enqueues and a system-wide slowdown.
Too many control files - Remember, you have to write to all controlfiles.
Manual COMMITS and log switches - Custom code that issues frequent COMMIT processing must write to the controlfile, as also when switching log files.

Looking at the AWR report we can see:

IOStat by Filetype summary

'Data' columns suffixed with M,G,T,P are in multiples of 1024 other columns suffixed with K,M,G,T,P are in multiples of 1000
Small Read and Large Read are average service times, in milliseconds
Ordered by (Data Read + Write) desc

Filetype Name Reads: Data Reqs per sec Data per sec Writes: Data Reqs per sec Data per sec Small Read Large Read
Control File 71.1G 23.40 3.369M 1.2G 2.82 .056M 2.60 17.80

This means 71.1G on controlfile reads which is very huge.

rman@apsrp0189 (TNS V1-V3) begin dbms_rcvman.getRequiredS...
29,781 29,781 167 178.33 0.00 12.41 5mw55dp9p6nyt rman@apsrp0189 (TNS V1-V3) select nvl(max(al.recid), '0')...
11,022 11,022 167 66.00 0.00 4.59 gf87bnxzf9raf rman@apsrp0189 (TNS V1-V3) select db.version_time, db.con...
9,872 9,872 54 182.81 0.00 4.11 7u9ndtp0gcmu8 rman@apsrp0189 (TNS V1-V3) SELECT NVL(MAX(AL.NEXT_CHANGE#...

This means a backup is going on during that period this could be the cause of the high number of reads.

We need to examine:

1. Where the controlfiles are placed:

Are all in the same disk?

control_files +REDO01/<instance_name>/controlfile/current.256.856619303, +REDO02/spppr01/controlfile/current.256.856619303

2. Size of the control files

SQL> SELECT name FROM gv$controlfile;

SQL> SELECT * FROM gv$system_event WHERE event LIKE '%control%

SQL> SELECT event, wait_time, p1, p2, p3 FROM gv$session_wait WHERE event LIKE '%control%';

SQL> ALTER SESSION set events 'immediate trace name controlf level 3';

3. Check "Control File" for "IOStat by Filetype summary" of AWR report and compare the figure for both good and bad time: is there a big difference between good & bad time?

5. If log switch is slow (you can observe it in alert log), and you may also see excessive controlfile reads.

sampe 1:

IOStat by Function summary
'Data' columns suffixed with M,G,T,P are in multiples of 1024 other columns suffixed with K,M,G,T,P are in multiples of 1000
ordered by (Data Read + Write) desc
Function Name Reads: Data Reqs per sec Data per sec Writes: Data Reqs per sec Data per sec Waits: Count Avg Tm(ms)
RMAN 243G 106.15 70.11M 1M 0.02 0M 386           42.13
Others 530M 9.47 .149M 36M 0.62 .01M 34.7K          126.45   <-rman 备份调用了大部分资源,导致AVG time 只有126  ms 和 134 ms
LGWR 63M 1.13 .018M 32M 0.63 .009M 5270      134.38
DBWR 0M 0.00 0M 5M 0.18 .001M 0
Direct Reads 1M 0.02 0M 1M 0.02 0M 0
Buffer Cache Reads 1M 0.03 0M 0M 0.00 0M 104 120.76
Direct Writes 0M 0.00 0M 0M 0.01 0M 0
TOTAL: 243.6G 116.79 70.277M 75M 1.48 .021M 40.5K 126.66

Top 10 Foreground Events by Total Wait Time

Event Waits Total Wait Time (sec) Wait Avg(ms) % DB time Wait Class
control file sequential read 28,888 3715.7 129 99.1 System I/O                             <- 间接导致控制文件读 I/O 达到  129 ms.
log file sync 179 106.7 596 2.8 Commit

查看使用到大量control file sequential read 的sql 消耗时间达到了10s 以上。

这是正常现象。

转载于:https://www.cnblogs.com/feiyun8616/p/8159215.html

High waits on control file sequential read相关推荐

  1. 一次控制文件control file sequential read 等待性能案例分析

    记录关于control file的一个事件, 此事件只是通知类event,和db file sequential read类似为数据库的I/O类操作,但wait class不是USER I/O,而是S ...

  2. oracle db file sequential read,db file sequential read等待事件

    Waits on 'db file sequential read' normally occur during index lookups when the block is not in memo ...

  3. 等待事件:control file parallel write

    转自作者:dotaddjj control file parallel write:控制文件写入等待 控制文件记录着db的scn.数据文件的scn.当前redo log号.归档日志信息.备份集信息等等 ...

  4. oracle db file sequential read,详解 db file sequential read 等待事件

    db file sequential read (本文由翻译,转载请注明出处) db file sequential read 事件有三个参数:file#,first block#, block co ...

  5. oracle db file sequential read,db file sequential read及优化

    db file sequential read:直接路径读: 官方说明如下: This event signifies that the user process is reading a buffe ...

  6. oracle db file sequential read,2.db file sequential read等待事件

    db file sequential read等待事件 原创 2017-07-22 Oracle 宅必备 开始讲解awr报告Top 5 Timed Events部分 今天讲db file sequen ...

  7. Effect of Switchovers, Failovers, and Control File Creation on Backups

    对dataguard 官方文档里面的这句话不理解,是否能给出一个样例说明: 10.2.0.5的版本号 Effect of Switchovers, Failovers, and Control Fil ...

  8. oracle control file文件 详解

    1 定义当前物理数据库状态信息的二进制文件 (1)控制文件丢失的话要求恢复 (2)它是在MOUNT状态被读取的(可以在NOMOUNT状态用CREATE CONFILE重建) (3)它是数据库操作必须的 ...

  9. 使用RMAN备份控制文件(control file)和系统参数文件(spfile)

    1.Use the CONFIGURE CONTROLFILE AUTOBACKUP command to eanable 设置RMAN配置文件,将CONFIGE CONTROLFILE AUTOBA ...

最新文章

  1. 使用Keil语言的嵌入式C编程教程(上)
  2. pythonexcelweb交互插件_来一次Python与Excel的完美交互
  3. 光动能表怎么维护_男士手表什么牌子好,男士手表品牌推荐, 天梭、阿玛尼、西铁城、天王表、罗西尼、卡西欧男手表推荐...
  4. OpenCV4每日一练day1:VS2015+opencv4.1.0+读图测试
  5. Shell:while语句、for语句、if语句
  6. Java基础Character类、Math类、Date类、DateFormat类、Calendar类
  7. ulipad编码问题
  8. 免费搭建无限容量个人网盘
  9. 去除从网页上复制到WORD文档中的下箭头方法
  10. 科隆国际游戏展:戴尔与ALIENWARE展示创新电竞产品
  11. Centos7之Hadoop完全分布式集群搭建和配置
  12. [usOJ5677]御神渡
  13. ActiveMq简单使用
  14. 50欧姆系统的由来的小故事
  15. https 以及内网如何使用
  16. 水晶报表打印出错,未能加载文件或程序集“CrystalDecisions.CrystalReports.Engine, Version=10.5.3700.0
  17. 爬虫爬取京东产品数据
  18. flyme最新7基于android,终于来了,魅族开始基于Android 7.0版本的Flyme内测
  19. 在IBM PureApplication System上安装IBM InfoSphere Guardium数据加密
  20. vue 显示日期只显示年月_vue获取年月日

热门文章

  1. 圣诞老人过悬崖小游戏源码
  2. 激光切割教程(无线版)
  3. kvm服务器创建虚拟机
  4. 详解支持向量机(SVM)算法与代码实现
  5. 使用采购管理系统,真的能有效降低企业采购成本吗?
  6. Au入门系列之四:降噪与修复
  7. openldap系列
  8. oracle客户端mac地址,Oracle客户端工具之 Oracle SQL Handler For Mac下载
  9. R绘图 | 堆叠柱状图
  10. PS3120A-音箱U盘供电USB升压IC