Oracle 查詢耗時 SQL

2021-07-04 21:52:33 字數 686 閱讀 3840

-- start

當你的系統變慢時,如何查詢系統中最耗時的 sql 呢?試一試下面的 sql 吧。

select * from (

select * from v$sqlstats

-- 最耗時的 sql

-- elapsed_time 指的是總耗時(毫秒),平均耗時 = elapsed_time/executions

-- order by elapsed_time desc

-- 查詢執行次數最多的 sql

-- order by executions desc

-- 讀硬碟最多的 sql

-- order by disk_reads desc

-- 最費 cpu 的 sql

-- order by buffer_gets desc

) where rownum <=50;

一旦查詢到耗時 sql,你需要檢視一下它們的執行計畫才能知道它們為什麼慢,不知道如何查詢執行計畫?看看這裡吧

--更多參見:oracle sql 優化精萃

-- last edited on 2015-08-28

-- created by shangbo on 2015-08-28

-- end

檢視Oracle最耗時的SQL

1.檢視總消耗時間最多的前100條sql語句 select from select v.sql id,v.child number,v.sql text,last load time,v.parsing user id,round v.elapsed time 1000000 case when e...

檢視Oracle最耗時的SQL

有很多種方法可以用來找出哪些sql語句需要優化,但是很久以來,最簡單的方法都是分析儲存在v sql檢視中的快取的sql資訊。通過v sql檢視,可以確定具有高消耗時間 cup和io讀取的sql語句。1.檢視總消耗時間最多的前10條sql語句 select from select v.sql id,v...

檢視Oracle最耗時的SQL

有很多種方法可以用來找出哪些sql語句需要優化,但是很久以來,最簡單的方法都是分析儲存在v sql檢視中的快取的sql資訊。通過v sql檢視,可以確定具有高消耗時間 cup和io讀取的sql語句。1.檢視總消耗時間最多的前10條sql語句 select from select v.sql id,v...