簡述oracle日誌組的四種狀態

jane_pop發表於2014-08-22
可以用以下SQL語句查詢oracle各日誌組的狀態:
SQL> select group#,members,status from v$log;


    GROUP#    MEMBERS STATUS
---------- ---------- ----------------
         1          1 INACTIVE
         2          1 CURRENT
         3          1 INACTIVE

oracle的日誌組有四種狀態:unused, current ,active ,inactive;
unused:表明該日誌組從來沒有被使用過,我們可以看到重建的日誌組就是這個狀態。
current:是oracle當前正在使用的日誌組,即後臺程式LGWR正在寫的日誌組。
active:當發生日誌切換的時候,狀態為current的日誌組就會變成active狀態,表明記錄在這個日誌組的事務提交所造成的資料塊改變,還沒有完全從database buffer cache 寫入到data file中。當資料庫處於archivelog mode時,ARCn就會歸檔這個日誌組。所以處在這個狀態的日誌組是不允許被覆蓋的。崩潰恢復需要該狀態,可用於塊恢復,可能歸檔也可能未歸檔。
inactive:處於這個狀態的日誌組,表明記錄在這個日誌組的事務提交所造成的資料塊的改變,已經完全從database buffer cache寫入到data file中了,例項恢復不再需要這個狀態的日誌組了,所以這個日誌組是可以被覆蓋的。

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

相關文章