溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何根據(jù)awr報(bào)告查看最慢的sql語(yǔ)句

發(fā)布時(shí)間:2021-11-09 10:07:29 來(lái)源:億速云 閱讀:434 作者:小新 欄目:關(guān)系型數(shù)據(jù)庫(kù)

這篇文章主要介紹了如何根據(jù)awr報(bào)告查看最慢的sql語(yǔ)句,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

當(dāng)系統(tǒng)運(yùn)行了一段時(shí)間后,系統(tǒng)基本也趨于穩(wěn)定了,SQL調(diào)優(yōu)也變了DBA的一個(gè)主要的工作內(nèi)容,很多時(shí)候都是通過(guò)查看awr報(bào)告來(lái)檢查出有性能瓶頸的SQL語(yǔ)句,通過(guò)這個(gè)可以很清晰的看到具體運(yùn)行多少時(shí)間、次數(shù)、CPU、IO的比例。



但是每次都去查看awr報(bào)告是一件很繁瑣的事情,如果可以單獨(dú)的查看哪些有問(wèn)題的sql,就不用每次都去生成一個(gè)awr報(bào)告了。dba_hist_sqlstat這個(gè)視圖記錄了每次snap_id里面的sql信息,這里幫大家把整個(gè)腳本編寫出來(lái)了。


點(diǎn)擊(此處)折疊或打開(kāi)

  1. SELECT v.SQL_TEXT,m.* FROM (select distinct snap_id,

  2.                 sql_id,

  3.                 EXECUTIONS_DELTA,

  4.                 trunc(max(ELAPSED_TIME_DELTA)

  5.                       OVER(PARTITION BY snap_id, sql_id) / 1000000,

  6.                       0) max_elapsed,

  7.                 trunc((max(ELAPSED_TIME_DELTA)

  8.                        OVER(PARTITION BY snap_id, sql_id)) /

  9.                       (SUM(ELAPSED_TIME_DELTA) OVER(PARTITION BY snap_id)),

  10.                       2) * 100 per_total

  11.   from dba_hist_sqlstat t WHERE T.snap_id IN (SELECT MAX(snap_id) FROM dba_hist_sqlstat) ) M,v$sql v

  12.   where m.sql_id=v.sql_id and m.max_elapsed>=300

這個(gè)腳本是查找m.max_elapsed>=300(這邊的單位是秒),也是5分鐘的時(shí)間,可以根據(jù)系統(tǒng)的實(shí)際情況進(jìn)行定義;


可以看出sql_id值為d1ftvurv76hct運(yùn)行一次,這次運(yùn)行的時(shí)間為1199s,占總體消耗的36%。


【另】可以通過(guò)運(yùn)行定時(shí)job執(zhí)行這條sql語(yǔ)句,然后發(fā)送有問(wèn)題的sql信息到用戶的郵箱;

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“如何根據(jù)awr報(bào)告查看最慢的sql語(yǔ)句”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI