Thread 1 cannot allocate new log 的處理辦法

perfychi發表於2012-12-11

Thread 1 cannot allocate new log 的處理辦法 


Thread 1 cannot allocate new log 的處理辦法

分類: Oracle 1027人閱讀 評論(0) 舉報

ALTER SYSTEM ARCHIVE LOG
Thread 1 cannot allocate new log, sequence 2594
Checkpoint not complete

這個實際上是個比較常見的錯誤。通常來說是因為在日誌被寫滿時會切換 日誌組,這個時候會觸發一次checkpoint,DBWR會把記憶體中的髒塊往資料檔案中寫,只要沒寫結束就不會釋放這個日誌組。如果歸檔模式被開啟的 話,還會伴隨著ARCH寫歸檔的過程。如果redo log產生的過快,當CPK或歸檔還沒完成,LGWR已經把其餘的日誌組寫滿,又要往當前的日誌組裡面寫redo log的時候,這個時候就會發生衝突,就會被掛起。並且一直會往alert.log中寫類似上面的錯誤資訊。

增加日誌組:

1、select group#,sequence#,bytes,members,status from v$log;  檢視每組日誌的狀態

   GROUP#  SEQUENCE#      BYTES    MEMBERS STATUS
---------- ---------- ---------- ---------- ----------------
         1      16946   52428800          1 INACTIVE    ##  空閒的
         2      16947   52428800          1 INACTIVE    ##  空閒的
         3      16948   52428800          1 CURRENT   ##正在使用的

2、

alter database add logfile group 4 ('/opt/oradata/orclbj/redo04.log') size 200M;   增加1組日誌組 視情況而定增加日誌組的大小。

alter database add logfile group 5 ('/opt/oradata/orclbj/redo05.log') size 200M;

alter database add logfile group 6 ('/opt/oradata/orclbj/redo06.log') size 200M;

3、alter system switch logfile;  切換日誌組

4、alter database drop logfile group 1; 刪除日誌組1  線上增加日誌組的時候,刪除日誌組的時候只能刪除 日誌組狀態為 INACTIVE 的日誌組。

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

相關文章