首先查看ORACLE中有哪些等待类:
select a.WAIT_CLASS from v$event_name a group by a.WAIT_CLASS;
1 User I/O
2 Application
3 Network
4 Concurrency
5 Administrative
6 Configuration
7 Scheduler
8 Cluster
9 Other
10 Idle
11 System I/O
12 Commit
一:管理类:administrative
此等待事件是由于DBA的管理命令引起的,这些命令要求用户处于等待事件,比如,重建索引的操作。
二:应用程序类:Application
此等待事件是由于用户应用程序的代码引起的,比如锁等待——行级别的锁或显式的lock命令。
三:群集类:Cluster
此等待事件和实时应用集群RAC有关,global cache resources例如“gc cr block busy”
四:提交确认类:commit
此等待事件只包含一种等待事件,在执行完commit命令后,等待重做日志写确认(log file sync)
五:并发类:Concurrency
此等待事件是由于内部数据库资源引起的,比如闩锁。
六:配置类:Configuration
此等待事件是由于数据库或实例的不当配置造成的,比如不恰当的重做日志文件大小、共享池大小等。
七:空闲类:Idle
此等待事件意味着会话不活跃,正在等待工作。比如SQL*Net message from client。
八:网络类:network
和网络环境相关的一些等待,比如sql*net more data to dblink。
九:其他类:other
通常比较少见,比如“wait for EMON spawn”
十:调度类:Scheduler
和资源管理器(resource manage)有关,比如“resmgr:become active”。
十一:系统IO类:System I/O
通常是由于后台进程的IO操作引起的,比如 DBWR wait for “db file parallel write”。
十二:用户IO类:User I/O
通常是由于用户IO操作引起的,比如“db file sequential read”
以上内容整理自网络。