ORACLE 檢視SQL程序執行情況

2021-07-24 05:33:09 字數 1094 閱讀 8176

找到長時間執行的oracle會話,檢視其作業系統程序狀態

1、查詢系統中長時間執行的sql操作,順序排列:

select sid, message from v$session_longops order by start_time;

通過message列,可以看到會話當前執行的狀態。

2、查詢當前正在執行的sql完成比率:

select sid, opname, target_desc, sofar, totalwork, trunc(sofar/totalwork*100,2) || '%' as perwork

from v$session_longops where sofar != totalwork;

3、執行下面的查詢,得到當前長時間操作執行的sql任務分別是什麼:

select opname, target, to_char(start_time, 'yyyy-mm-dd hh24:mi:ss') start_time, elapsed_seconds elapsed, 

executions execs, buffer_gets/decode(executions, 0, 1, executions) bufgets, module, sql_text

from v$session_longops sl, v$sqlarea sa

where sl.sql_hash_value = sa.hash_value

and upper(substr(module, 1, 4)) <> 'rman'

and substr(opname, 1, 4 ) <> 'rman'

and sl.start_time > trunc(sysdate)

order by start_time;

4、執行下面的查詢,取得這些oracle程序對應的作業系統程序資訊:

select p.spid, s.sid, s.serial#, s.program from v$process, v$session s

where p.addr = s.paddr and s.sid in (138);

5、以root身份登入作業系統,執行topas命令,可以看到相關作業系統任務(也可能看不到)。

oracle檢視sql程序執行情況

找到長時間執行的oracle會話,檢視其作業系統程序狀態 1 查詢系統中長時間執行的sql操作,順序排列 select sid,message from v session longops order by start time 通過message列,可以看到會話當前執行的狀態。2 查詢當前正在執行...

oracle 檢視執行最慢 sql

憤怒的不爭 2016 12 22 22 06 select from select sa.sql text,sa.sql fulltext,sa.executions 執行次數 round sa.elapsed time 1000000,2 總執行時間 round sa.elapsed time 1...

Oracle檢視執行過的SQL

reference reference reference oracle中可以通過v session表檢視當前有效的session資訊,並且可以通過v session的sql id或sql address通過關聯查詢v sql檢視當前正在執行的sql語句 如果想檢視session近期執行的sql語句...