How to 計算當前redo日誌的使用率

oracle_ace發表於2007-12-26
在計算之前先來看兩個檢視:
x$kccle  是指 [K]ernel [C]ache [C]ontrolfile management [L]ogfil[E] record
x$kcccp 是指 [K]ernel [C]ache [C]ontrolfile management [c]heckpoint [p]rogress

對於x$kccle檢視有三個欄位可以關注一下:
LESIZ 表示logfile的大小(以塊的形式表示)
LESEQ表示log sequence#
LEBSZ則表示redo block的大小.

對於x$kcccp有兩個欄位也可以關注一下:
CPODR _SEQ 表示日誌檔案的seq#
CPODR_BNO 表示日誌檔案中塊的使用量
其中表示的都是current redo log的value

因此結合兩個檢視,引出我們的query sql:
select
 le.leseq    CURRENT_LOG_SEQUENCE#,
100*cp.cpodr_bno/LE.lesiz PERCENTAGE_FULL
from
x$kcccp cp,x$kccle le
where
 LE.leseq =CP.cpodr_seq
;

這裡檢視的是當前日誌的使用率。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12361284/viewspace-1634/,如需轉載,請註明出處,否則將追究法律責任。

相關文章