首页 > 代码库 > 一份有点意思的AWR报告

一份有点意思的AWR报告

    最近发现一个奇怪的现象,数据库报告上看负载很高,但是cpu和等待事件都很低,不知道消耗的资源跑到哪里去了?


Snap Id
Snap TimeSessionsCursors/Session
Begin Snap:507317-5月 -14 04:00:2012778.8
End Snap:507417-5月 -14 05:13:3636319.5
Elapsed: 73.27 (mins)  
DB Time: 1,196.25 (mins)  

Top 5 Timed Events

EventWaitsTime(s)Avg Wait(ms)% Total Call TimeWait Class
latch: library cache3,1746,9332,1849.7Concurrency
latch free9776,5306,6849.1Other
latch: shared pool4,0211,9294802.7Concurrency
cursor: pin S wait on X82,9021,620202.3Concurrency
CPU time 1,073 1.5 


Service Statistics

  • ordered by DB Time
Service NameDB Time (s)DB CPU (s)Physical ReadsLogical Reads
SYS$USERS67,080.30454.3043,60415,183,498
scmis4,523.20588.30022,868,201
SYS$BACKGROUND0.000.0010977,783

      可以看到数据库软件消耗的资源不多。

      找到问题症结:再看servicestatistics总的SYS$USERS消耗最多,这个是何方圣神呢?官方文档的解释:the SYS$USERS serviceis the default service name used when a user session is established withoutexplicitly identifying its service name。就是说SYS$USERS这是一个缺省的服务名,当用户的session建立的时候没有明确的标示符。

     那说明此时有其他的服务在数据库服务器上跑,只有用操作系统层面上做诊断,用shell写一个top的脚本监控一下,是哪个进程导致。最后诊断出是数据库服务器在某个时间段不响应,简单的说是硬件的问题。