v$session_longops简介

DBA们经常需要监控数据库中一些花费大量时间的操作,如备份恢复,收集统计信息,排序都会记录在这个视图当中。
这个视图主要是显示运行时间超过6秒的数据库操作的状态.所以对于数据库监控一些耗时的操作是非常有意义的。并且可以看到某个进程的执行进度。

V$SESSION_LONGOPS列说明
SID                      Session标识
SERIAL#                  Session串号
OPNAME                   操作简要说明
TARGET                   操作运行所在的对象
TARGET_DESC              目标对象说明
SOFAR                    至今为止完成的工作量
TOTALWORK                总工作量
UNITS                    工作量单位
START_TIME               操作开始时间
LAST_UPDATE_TIME         统计项最后更新时间
TIME_REMAINING           预计完成操作的剩余时间(秒)
ELAPSED_SECONDS          从操作开始总花费时间(秒)
CONTEXT                  前后关系
MESSAGE                  统计项的完整描述
USERNAME                 执行操作的用户ID
SQL_ADDRESS              用于连接查询的列
SQL_HASH_VALUE           用于连接查询的列


事例:查询RMAN的备份进度

select sid,
        serial#,
        context,
        sofar,
        totalwork,
        round(sofar / totalwork * 100, 2) "%_complete"
from v$session_longops
where opname like 'RMAN%'
and opname not like '%aggregate%'
and totalwork != 0
and sofar<>totalwork;


你可能感兴趣的:(Oracle)