oracle log狀態 active,inactive,current

可以用以下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中了,實例恢復不再需要這個狀態的日誌組了,所以這個日誌組是可以被覆蓋的。


active :是oracle進行實例恢復必須要用到的日誌。

inactive : 實例恢復不需要用到。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章