查看Oracle性能常用的SQL語句
原創(chuàng)如果你是sql語言高手,以下的文章完全可以跳過。但如果你是新手再或者對查看Oracle性能的sql語句不熟悉,那可以好好看看下面有關(guān)查看Oracle性能的文章描述。
判斷回滾段競爭的SQL語句:(當(dāng)Ratio大于2時存在回滾段競爭,需要增加更多的回滾段)
select rn.name, rs.GETS, rs.WAITS, (rs.WAITS / rs.GETS) * 100 ratio
from v$rollstat rs, v$rollname rn
where rs.USN = rn.usn
判斷回滾段競爭的SQL語句:(當(dāng)Ratio大于2時存在回滾段競爭,需要增加更多的回滾段)
select rn.name, rs.GETS, rs.WAITS, (rs.WAITS / rs.GETS) * 100 ratio
from v$rollstat rs, v$rollname rn
where rs.USN = rn.usn
判斷恢復(fù)日志競爭的SQL語句:(immediate_contention或wait_contention的值大于1時存在競爭)
select name,
(t.IMMEDIATE_MISSES /
decode((t.IMMEDIATE_GETS + t.IMMEDIATE_MISSES),
0,
-1,
(t.IMMEDIATE_GETS + t.IMMEDIATE_MISSES))) * 100 immediate_contention,
(t.MISSES / decode((t.GETS + t.MISSES), 0, -1, (t.GETS + t.MISSES))) * 100 wait_contention
from v$latch t
where name in ('redo copy', 'redo allocation')
判斷表空間碎片:(如果最大空閑空間占總空間很大比例則可能不存在碎片,如果比例較小,且有許多空閑空間,則可能碎片很多)
select t.tablespace_name,
sum(t.bytes),
max(t.bytes),
count(*),
max(t.bytes) / sum(t.bytes) radio
from dba_free_space t
group by t.tablespace_name
order by t.tablespace_name
以上只是截取了部分查看Oracle性能的常用sql語句,希望對你日常Oracle性能的日常開發(fā)有所幫助。
【編輯推薦】