清空 oracle 閃回區

dawn009發表於2015-01-30

 impdp 匯入資料出現如下錯誤

1. Errors in file /oracle/app/diag/rdbms/gavin/Gavin/trace/Gavin_arc0_5889.trc:  

2. ORA-19809: 超出了恢復檔案數的限制  

3. ORA-19804: 無法回收 49837568 位元組磁碟空間 ( 5218762752 限制中)  

4. ARC0: Error 19809 Creating archive log file to '/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_180_%u_.arc'  

應為arc log 沒有指定預設放在了閃回區,手工刪除閃回區歸檔日誌後,仍然出現以上錯誤,查詢閃回區使用情況

 

1. sys@GAVIN>SELECT substr(name, 1, 30) name, space_limit AS quota,  

2.   2             space_used        AS used,  

3.   3              space_reclaimable AS reclaimable,  

4.   4              number_of_files   AS files  

5.   5        FROM  v$recovery_file_dest ;  

6.   

7. NAME                                                                                                                          QUOTA       USED  

8. ------------------------------------------------------------------------------------------------------------------------ ---------- ----------  

9. RECLAIMABLE      FILES  

10. ----------- ----------  

11. /oracle/app/flash_recovery_are                                                                                           5218762752 5174088704  

12.           0        110  

發現仍然記錄了110個檔案,並未釋放.

使用rman對歸檔日誌驚醒cross check

 

1. [oracle@virtuabox ~]$ rman target /  

2.   

3. 恢復管理器: Release 11.2.0.1.0 - Production on 星期四 7 19 14:00:00 2012  

4.   

5. Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.  

6.   

7. 連線到目標資料庫: GAVIN (DBID=2942876758)  

8.   

9. RMAN> crosscheck archivelog all;  

10.   

11. 使用目標資料庫控制檔案替代恢復目錄  

12. 分配的通道: ORA_DISK_1  

13. 通道 ORA_DISK_1: SID=16 裝置型別=DISK  

14. 對歸檔日誌的驗證失敗  

15. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_70_80h2qxpn_.arc RECID=1 STAMP=789049214  

16. 對歸檔日誌的驗證失敗  

17. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_71_80h6z3hl_.arc RECID=2 STAMP=789053542  

18. 對歸檔日誌的驗證失敗  

19. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_72_80h6z8o7_.arc RECID=3 STAMP=789053549  

20. 對歸檔日誌的驗證失敗  

21. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_73_80h6zlgv_.arc RECID=4 STAMP=789053557  

22. 對歸檔日誌的驗證失敗  

23. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_74_80h6zrds_.arc RECID=5 STAMP=789053566  

24. 對歸檔日誌的驗證失敗  

25. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_75_80h70264_.arc RECID=6 STAMP=789053571  

26. 對歸檔日誌的驗證失敗  

27. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_76_80h707kp_.arc RECID=7 STAMP=789053577  

28. 對歸檔日誌的驗證失敗  

29. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_77_80h70fg1_.arc RECID=8 STAMP=789053583  

30. 對歸檔日誌的驗證失敗  

31. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_78_80h70mhx_.arc RECID=9 STAMP=789053589  

32. 對歸檔日誌的驗證失敗  

33. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_79_80h70sgg_.arc RECID=10 STAMP=789053594  

34. 對歸檔日誌的驗證失敗  

35. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_80_80h70zgp_.arc RECID=11 STAMP=789053601  

36. 對歸檔日誌的驗證失敗  

37. ...  

38. ...  

39. ...  

40. ...  

41. ...  

42. =/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_179_80h7k015_.arc RECID=110 STAMP=789054113  

43. 已交叉檢驗的 110 物件  

使用rman 從資料庫記錄中刪除歸檔日誌的記錄

1. RMAN> delete expired archivelog all;  

2.   

3. 使用目標資料庫控制檔案替代恢復目錄  

4. 分配的通道: ORA_DISK_1  

5. 通道 ORA_DISK_1: SID=20 裝置型別=DISK  

6. db_unique_name  GAVIN 的資料庫的歸檔日誌副本列表  

7. =====================================================================  

8.   

9. 關鍵字     執行緒序列     S 時間下限    

10. ------- ---- ------- - ----------  

11. 1       1    70      X 19-7 -12  

12.         名稱: /oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_70_80h2qxpn_.arc  

13.   

14. ...  

15. ...  

16. ...  

17.   

18. 110     1    179     X 19-7 -12  

19.         名稱: /oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_179_80h7k015_.arc  

20.   

21.   

22. 是否確定要刪除以上物件 (輸入 YES  NO)? yes  

23. ...  

24. ...  

25. ...  

26. 已刪除的歸檔日誌  

27. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_70_80h2qxpn_.arc RECID=1 STAMP=789049214  

28. 已刪除的歸檔日誌  

29. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_71_80h6z3hl_.arc RECID=2 STAMP=789053542  

30. 已刪除的歸檔日誌  

31. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_72_80h6z8o7_.arc RECID=3 STAMP=789053549  

32. ...  

33. ...  

34. ...  

35. 已刪除的歸檔日誌  

36. 歸檔日誌檔名=/oracle/app/flash_recovery_area/GAVIN/archivelog/2012_07_19/o1_mf_1_179_80h7k015_.arc RECID=110 STAMP=789054113  

37. 110 EXPIRED 物件已刪除  

重新驗證閃回區佔用情況

 

1. sys@GAVIN>SELECT substr(name, 1, 30) name, space_limit AS quota,  

2.   2            space_used        AS used,  

3.   3             space_reclaimable AS reclaimable,  

4.   4              number_of_files   AS files  

5.   5       FROM  v$recovery_file_dest ;  

6.   

7. NAME                                                                                                                          QUOTA       USED  

8. ------------------------------------------------------------------------------------------------------------------------ ---------- ----------  

9. RECLAIMABLE      FILES  

10. ----------- ----------  

11. /oracle/app/flash_recovery_are                                                                                           5218762752  143901184  

12.           0          3  

處理完畢

由於本次事故是由於歸檔日誌佔用了大量的閃回區造成的,

所以可以考慮轉移歸檔日誌位置

檢視歸檔情況

1. sys@GAVIN>archive log list;  

2. 資料庫日誌模式            存檔模式  

3. 自動存檔             啟用  

4. 存檔終點            USE_DB_RECOVERY_FILE_DEST  

5. 最早的聯機日誌序列     181  

6. 下一個存檔日誌序列   183  

7. 當前日誌序列           183  

文件存在了 檔案恢復區 所以導致了閃回區滿的情況

檢視下閃回區的具體地址

1. sys@GAVIN>show parameter DB_RECOVERY_FILE_DEST  

2.   

3. NAME                                 TYPE        VALUE  

4. ------------------------------------ ----------- ------------------------------  

5. db_recovery_file_dest                string      /oracle/app/flash_recovery_are  

6.                                                  a  

7. db_recovery_file_dest_size           big integer 4977M  

我們指定歸檔日誌存放點

db_recovery_file_dest引數置空 

以防萬一,將log_archive_dest引數也置空 

我們這裡採用的生效引數是log_archive_dest_1,修改方法如下 

 

1. sys@GAVIN>alter system set db_recovery_file_dest = '' scope=spfile;  

2.   

3. 系統已更改。  

4.   

5. sys@GAVIN>alter system set log_archive_dest = '' scope=spfile;  

6.   

7. 系統已更改。  

8.   

9. sys@GAVIN>alter system set log_archive_dest_1 = 'location=/oracle/app/arc' scope=spfile;  

10.   

11. 系統已更改。  

重啟資料庫驗證歸檔日誌位置

 

1. sys@GAVIN>shutdown immediate;  

2. 資料庫已經關閉。  

3. 已經解除安裝資料庫。  

4. ORACLE 例程已經關閉。  

5. sys@GAVIN>startup  

6. ORACLE 例程已經啟動。  

7.   

8. Total System Global Area  826753024 bytes  

9. Fixed Size                  2217872 bytes  

10. Variable Size             583010416 bytes  

11. Database Buffers          234881024 bytes  

12. Redo Buffers                6643712 bytes  

13. 資料庫裝載完畢。  

14. 資料庫已經開啟。  

15. sys@GAVIN>archive log list;  

16. 資料庫日誌模式            存檔模式  

17. 自動存檔             啟用  

18. 存檔終點            /oracle/app/arc  

19. 最早的聯機日誌序列     181  

20. 下一個存檔日誌序列   183  

21. 當前日誌序列           183  

轉載於:http://gavinshaw.blog.51cto.com/385947/935314/ 

 

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

相關文章