col opname format a32
col target_desc format a32
col perwork format a12
set lines 131
select sid,OPNAME,TARGET_DESC,sofar,TOTALWORK,trunc(sofar/totalwork*100,2)||’%’ as perwork
from v$session_longops where sofar!=totalwork;
解释:perwork是索引创建任务完成得百分比。
select * from v s e s s i o n a , v session a,v sessiona,vsession_longops b where a.SID = b.SID and a.SERIAL# = b.SERIAL# ;
select * from v s q l a , v sql a,v sqla,vsession_longops b where a.SQL_ID = b.SQL_ID ;
select * from v s q l a r e a a , v sqlarea a,v sqlareaa,vsession_longops b where a.HASH_VALUE = b.SQL_HASH_VALUE ;
如果是在RAC,改成GV$SESSION_LONGOPS这个视图
v$session_longops
SID Session标识
SERIAL# Session串号
OPNAME 操作简要说明
TARGET 操作运行所在的对象
TARGET_DESC 目标对象说明
SOFAR 至今为止完成的工作量
TOTALWORK 总工作量
UNITS 工作量单位
START_TIME 操作开始时间
LAST_UPDATE_TIME 统计项最后更新时间
TIMESTAMP 操作的时间戳
TIME_REMAINING 预计完成操作的剩余时间(秒)
ELAPSED_SECONDS 从操作开始总花费时间(秒)
CONTEXT 前后关系
MESSAGE 统计项的完整描述
USERNAME 执行操作的用户ID
SQL_ADDRESS 关联v
s
q
l
S
Q
L
H
A
S
H
V
A
L
U
E
关
联
v
sql SQL_HASH_VALUE 关联v
sqlSQLHASHVALUE关联vsql
SQL_ID 关联v$sql
QCSID 主要是并行查询一起使用