Oracle V$event_name 整理

本文介绍了Oracle数据库中V$EVENT_NAME视图的结构与用途,包括各列含义及与X$表的关系,有助于理解数据库等待事件。

V$EVENT_NAME (10gR2)

V$EVENT_NAME  displays information about wait events.

Column Datatype Description EVENT# NUMBER Number of the wait event EVENT_ID NUMBER Identifier of the wait event NAME VARCHAR2(64) Name of the wait event PARAMETER1 VARCHAR2(64) Description of the first parameter for the wait event PARAMETER2 VARCHAR2(64) Description of the second parameter for the wait event PARAMETER3 VARCHAR2(64) Description of the third parameter for the wait event WAIT_CLASS_ID NUMBER Identifier of the class of the wait event WAIT_CLASS# NUMBER Number of the class of the wait event WAIT_CLASS VARCHAR2(64) Name of the class of the wait event. See "Classes of Wait Events" for a description of the different wait event classes.

原文链接

v$event_name不是动态的v$视图,它提供的信息并不随时间而变化。它是参考视图,包含所有为数据库实例定义的等待事件。

 desc v$event_name;
名称                                      是否为空? 类型
----------------------------------------- -------- --------------
EVENT#                                             NUMBER
EVENT_ID                                           NUMBER
NAME                                               VARCHAR2(64)
PARAMETER1                                         VARCHAR2(64)
PARAMETER2                                         VARCHAR2(64)
PARAMETER3                                         VARCHAR2(64)
WAIT_CLASS_ID                                      NUMBER
WAIT_CLASS#                                        NUMBER
WAIT_CLASS                                         VARCHAR2(64)

event#是事件的唯一编号,该编号是由Oracle代码中的编译时间宏生成,所以对于同一等待事件,从一个Oracle版本到另一个版本时,这一编号会发生变化。

event_id列,包含基于事件名称的一个散列值。只要该事件名称不变,改散列值在不同的版本间就会保持不变。

name包含等待事件的名称,每个等待事件最多有三个属性,分别记录在parameter1, parameter2, parameter3列中。这些属性给出等待事件每次发生时的特定信息。

 wait_class_id包含等待类名的散列值,只要等待类名不变,该散列值将在版本间保持不变。

wait_class# 包含wait_class的唯一编号,该编号可能随版本变化而改变。

wait_class 包含等待事件类的实际名称。


以下来自 Oracle Wait Interface: V$EVENT_NAME

v$event_name 从 X$ 表 X$ksled(Kernel Service Latch Event Descriptors) 而来,创建语句类似如下:

SELECT inst_id, indx, ksledhash, kslednam, ksledp1, ksledp2, ksledp3,
       ksledclassid, ksledclass#, ksledclass
  FROM x$ksled;


对应的列:

MEANINGFUL NAME              X$ TABLE COLUMN NAME
=====================        ======================
event#                        indx
event_id                      ksledhash
name                          kslednam
parameter1                    ksledp1
parameter2                    ksledp2
parameter3                    ksledp3
wait_class_id                 ksledclassid
wait_class#                   ksledclass#
wait_class                    ksledclass

而 V$SESSION_WAIT 视图是基于 x$ksusecst 、x$ksled这两个固定表的,所以 v$event_name 的 PARAMETER1、PARAMETER2 PARAMETER3 对应 V$SESSION_WAIT 中的 P1、P2、P3 列也不足为奇了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23650854/viewspace-689311/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23650854/viewspace-689311/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值