当前位置:首页 > 全部子站 > IT > Oracle

ORACLE等待事件监控

来源:长理培训发布时间:2017-10-17 20:17:16

  监控oracle的等待事件

  select event,

  sum(decode(wait_Time, 0, 0, 1)) "Prev",

  sum(decode(wait_Time, 0, 1, 0)) "Curr",

  count(*) "Tot"

  from v$session_Wait

  group by event

  order by 4;

  1 等待事件概述

  Oracle的等待事件是衡量oracle运行状况的重要依据及指标.

  等待事件的概念是在Oracle7.0.1.2中引入的,大致有100个等待事件。在Oracle 8.0中这个数目增加到了大约150个,在Oracle8i中大约有200个事件,在Oracle9i中大约有360个等待事件。

  主要有两种类别的等待事件,即空闲(idle)等待事件和非空闲(non-idle)等待事件。

  空闲等待事件是指Oracle正等待某种工作,比如用sqlplus登录之后,但没有进一步发出任何命令,此时该session就处于 SQL*Net message from/to client等待事件状态,等待用户发出命令,任何的在诊断和优化数据库的时候,我们不用过多注意这部分事件。非空闲等待事件专门针对Oracle的活动,指数据库任务或应用运行过程中发生的等待,这些等待事件是我们在调整数据库的时候应该关注与研究的。

  2  oracle等待事件类型

  每一个等待事件都属于某一类, 下面给出了每一类等待事件的描述.

  管理类: administrative

  类等待事件是由于DBA的管理命令引起的,这些命令要求用户处于等待状态,比如,重建索引。

  应用程序类:

  此类等待事件是由于用户应用程序的代码引起的(比如:锁等待).

  群集类:Cluster

  此类等待事件和真正应用群集RAC的资源有关。(比如:gc cr block busy等待事件).

  提交确认类:Commit

  此类等待事件只包含一种等待事件--在执行了一个commit命令后,等待一个重做日志写确认(也就是log file sync).

  并发类:Concurrency

  此类等待事件是由内部数据库资源引起的,比如闩锁。

  配置类:Configuration

  此类等待事件是由数据库或实例的不当配置造成的,比如,重做日志文件尺寸太小,共享池的大小等。

  空闲类:Idle

  此类等待事件意味着会话不活跃,等待工作。比如,sql * net messages from client。

  网络类:Network

  和网络环境相关的一些等待事件,比如sql* net more data to dblink。

  Other

  此类等待事件通常比较少见。

  调度类:Scheduler

  Resource Manager related waits (for example, 'resmgr: become active')

  系统I/O类:System I/O

  此类等待事件通过是由后台进程的I/O操作引起的,比如DBWR等待,db file paralle write。

  用户I/O类:User I/O

  此类等待事件通常是由用户I/O操作引起的,比如db file sequential read。

  3 等待事件详细描述

  1, db file scattered read (DB文件分散读取)

  这种情况通常与全表扫描相关. 当数据库进行全表扫描时, 基于性能的考虑, 数据会分散(scattered)读入buffer cache. 如果这个等待事件比较显着, 可能考虑查看对应的表有没有创建合适的索引.

  然而这个等待事件并不一定就意味着性能低下, 在某些条件下oracle会主动使用全表扫描来替换索引扫描以提高性能, 这和访问的数据量有关, 在CBO下oracle会进行更为智能的选择, RBO下oracle更倾向于使用索引.

  因为全表扫描到内存的数据块被置于LRU链表的冷端, 所以这些数据块将可能在较短时间内被置换出物理内存, 为了避免反复物理IO, 对频繁访问的较小的数据表,可以选择把他们cache到内存中.

  当这个等待时间比较显着时, 可以结合v$session_longops动态性能视图来进行诊断, 该视图中记录了长时间(运行时间超过6秒)运行的事务, 可能很多是全表扫描操作.

  Column

  Datatype

  Description

  SID

  NUMBER

  Session identifier

  SERIAL#

  NUMBER

  Session serial number

  OPNAME

  VARCHAR2(64)

  Brief description of the operation

  TARGET

  VARCHAR2(64)

  The object on which the operation is carried out

  TARGET_DESC

  VARCHAR2(32)

  Description of the target

  SOFAR

  NUMBER

  The units of work done so far

  TOTALWORK

  NUMBER

  The total units of work

  UNITS

  VARCHAR2(32)

  The units of measurement

  START_TIME

  DATE

  The starting time of operation

  LAST_UPDATE_TIME

  DATE

  Time when statistics last updated

  TIME_REMAINING

  NUMBER

  Estimate (in seconds) of time remaining for the operation to complete

  ELAPSED_SECONDS

  NUMBER

  The number of elapsed seconds from the start of operations

责编:罗莉

发表评论(共0条评论)
请自觉遵守互联网相关政策法规,评论内容只代表网友观点,发表审核后显示!

国家电网校园招聘考试直播课程通关班

  • 讲师:刘萍萍 / 谢楠
  • 课时:160h
  • 价格 4580

特色双名师解密新课程高频考点,送国家电网教材讲义,助力一次通关

配套通关班送国网在线题库一套

课程专业名称
讲师
课时
查看课程

国家电网招聘考试录播视频课程

  • 讲师:崔莹莹 / 刘萍萍
  • 课时:180h
  • 价格 3580

特色解密新课程高频考点,免费学习,助力一次通关

配套全套国网视频课程免费学习

课程专业名称
讲师
课时
查看课程
在线题库
面授课程更多>>
图书商城更多>>
在线报名
  • 报考专业:
    *(必填)
  • 姓名:
    *(必填)
  • 手机号码:
    *(必填)
返回顶部