在Oracle中,V$SESSION

您所在的位置:网站首页 oracle客户端11g 在Oracle中,V$SESSION

在Oracle中,V$SESSION

2023-04-28 04:48| 来源: 网络整理| 查看: 265

题目部分

在Oracle中,V$SESSION_LONGOPS视图的作用是什么?

答案部分

在Oracle 11g之前的版本,长时间运行的SQL可以通过监控VSESSION_LONGOPS来观察,当某个操作执行时间超过6秒时,就会被记录在VSESSION_LONGOPS中,通常可以监控到全表扫描、全索引扫描、哈希连接、并行查询等操作。

V$SESSION_LONGOPS查询脚本如下所示:

SET LINE 9999 PAGESIZE 9999 COL USERNAME FORMAT A10 COL SESSION_INFO FORMAT A30 COL TARGET FORMAT A20 COL OPNAME FORMAT A35 COL MESSAGE FORMAT A80 COL SOFAR_TOTALWORK FORMAT A20 COL PROGRESS FORMAT A8 SELECT A.USERNAME, (SELECT NB.SID || ',' || NB.SERIAL# || ',' || PR.SPID || ',' ||NB.OSUSER|| ',' ||NB.STATUS|| ',' ||NB.EVENT FROM GV$PROCESS PR, GV$SESSION NB WHERE NB.PADDR = PR.ADDR AND NB.SID = A.SID AND NB.SERIAL# = A.SERIAL# AND PR.INST_ID = NB.INST_ID) SESSION_INFO, A.TARGET, A.OPNAME, TO_CHAR(A.START_TIME, 'YYYY-MM-DD HH24:MI:SS') START_TIME, ROUND(A.SOFAR * 100 / A.TOTALWORK, 2) || '%' AS PROGRESS, (A.SOFAR || ':' || A.TOTALWORK) SOFAR_TOTALWORK, A.TIME_REMAINING TIME_REMAINING, A.ELAPSED_SECONDS ELAPSED_SECONDS, MESSAGE MESSAGE FROM GV$SESSION_LONGOPS A WHERE A.TIME_REMAINING 0 ORDER BY A.TIME_REMAINING DESC, A.SQL_ID, A.SID;

本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3