Oracle数字字典包含一个鲜为人知的v$session_longops视图v$session_longops视图可以使Oracle专家减少运行时间很长的DDL和DML语句的运行时间
例如在数据仓库环境中即使使用并行索引创建技术构建一个很多G字节大的索引需要耗费很多个小时这里你就可以查询v$session_longops视图快速找出一个特定的DDL语句已经完成了多少其实v$session_longops视图也可以用于任何运行时间很长的操作包括运行时间很长的更新操作
下面的脚本将显示一个状态信息说明了运行时间很长的DDL操作已经使用的时间注意你必须从v$session中取得SID并将其插入到下面的SQL语句中
select
sid
message
from
v$session_longops
where
sid =
order by
start_time;
这里是一个输出的例子显示了运行时间很长的CREATE INDEX语句的运行过程
SID MESSAGE
Table Scan: CUSTPK_IDX: out of Blocks done