首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

oracle 归档日志满了如何避免

2013-11-05 
oracle 归档日志满了如何处理转自:http://blog.csdn.net/linghe301/article/details/9291273?今天在进行Or

oracle 归档日志满了如何处理

转自:http://blog.csdn.net/linghe301/article/details/9291273

?

今天在进行Oracle相关测试,因为Windows自动更新,自己重启机器了,结果重启完毕之后,我的oracle就无法正常启动了

报ora-03113错误。

[csharp]?view plaincopyprint??
  1. ORA-03113:?通信通道的文件结尾??
  2. 进程?ID:?8636??
  3. 会话?ID:?192?序列号:?9??

?

?

去D:\app\Administrator\diag\rdbms\orcl\orcl\trace\alert_orcl.log里面查看报错信息,发现以下相关信息

[csharp]?view plaincopyprint??
  1. Errors?in?file?d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_9532.trc:??
  2. ORA-19815:?警告:?db_recovery_file_dest_size?字节?(共?4102029312?字节)?已使用?100.00%,?尚有?0?字节可用。??
  3. ************************************************************************??
  4. You?have?following?choices?to?free?up?space?from?recovery?area:??
  5. 1.?Consider?changing?RMAN?RETENTION?POLICY.?If?you?are?using?Data?Guard,??
  6. ???then?consider?changing?RMAN?ARCHIVELOG?DELETION?POLICY.??
  7. 2.?Back?up?files?to?tertiary?device?such?as?tape?using?RMAN??
  8. ???BACKUP?RECOVERY?AREA?command.??
  9. 3.?Add?disk?space?and?increase?db_recovery_file_dest_size?parameter?to??
  10. ???reflect?the?new?space.??
  11. 4.?Delete?unnecessary?files?using?RMAN?DELETE?command.?If?an?operating??
  12. ???system?command?was?used?to?delete?files,?then?use?RMAN?CROSSCHECK?and??
  13. ???DELETE?EXPIRED?commands.??
  14. ************************************************************************??
  15. Errors?in?file?d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_9532.trc:??
  16. ORA-19809:?超出了恢复文件数的限制??
  17. ORA-19804:?无法回收?47112704?字节磁盘空间?(从?4102029312?限制中)??
  18. ARCH:?Error?19809?Creating?archive?log?file?to?'D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_171_%U_.ARC'??
  19. Errors?in?file?d:\app\administrator\diag\rdbms\orcl\orcl\trace\orcl_ora_9532.trc:??
  20. ORA-16038:?日志?3?sequence#?171?无法归档??
  21. ORA-19809:?超出了恢复文件数的限制??
  22. ORA-00312:?联机日志?3?线程?1:?'D:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG'??

这个信息以及很清楚了,说明我的归档日志满了

?

那么怎么才能验证我的归档日志满了呢?

首先我看一下我的DB_RECOVERY_FILE_DEST_SIZE值有多大

[csharp]?view plaincopyprint??
  1. C:\Users\Administrator>sqlplus?/nolog??
  2. ??
  3. SQL*Plus:?Release?11.2.0.1.0?Production?on?星期三?7月?10?15:33:36?2013??
  4. ??
  5. Copyright?(c)?1982,?2010,?Oracle.??All?rights?reserved.??
  6. ??
  7. SQL>?conn?/?as?sysdba??
  8. 已连接。??
  9. SQL>?startup?mount;??
  10. ORACLE?例程已经启动。??
  11. ??
  12. Total?System?Global?Area?5110898688?bytes??
  13. Fixed?Size??????????????????2184592?bytes??
  14. Variable?Size????????????3355445872?bytes??
  15. Database?Buffers?????????1744830464?bytes??
  16. Redo?Buffers????????????????8437760?bytes??
  17. 数据库装载完毕。??
  18. SQL>?show?parameter?db_recovery_file_dest_size;??
  19. ??
  20. NAME?????????????????????????????????TYPE????????VALUE??
  21. ------------------------------------?-----------?-----??
  22. db_recovery_file_dest_size???????????big?integer?3912M??

但是我实际的归档日志文件

?

db_recovery_file_dest ? ?= "D:\app\Administrator\flash_recovery_area"
? db_recovery_file_dest_size= 3912M

D:\app\Administrator\flash_recovery_area\orcl\ARCHIVELOG路径下有3.8GB已经达到临界值,也就是错误上面所述。

?

问题已经找到,我怎么才能进行修复呢。其实报错日志里面的信息以及写的很清楚了使用RMAN登录

因为归档日志很多,我紧紧截取了少部分

[csharp]?view plaincopyprint??
  1. C:\Users\Administrator>rman??target?/??
  2. ??
  3. 恢复管理器:?Release?11.2.0.1.0?-?Production?on?星期三?7月?10?14:58:42?2013??
  4. ??
  5. Copyright?(c)?1982,?2009,?Oracle?and/or?its?affiliates.??All?rights?reserved.??
  6. ??
  7. 连接到目标数据库:?ORCL?(DBID=1336354077)??
  8. ??
  9. RMAN>?delete?archivelog?all;??
  10. ??
  11. 使用目标数据库控制文件替代恢复目录??
  12. 分配的通道:?ORA_DISK_1??
  13. 通道?ORA_DISK_1:?SID=222?设备类型=DISK??
  14. db_unique_name?为?ORCL?的数据库的归档日志副本列表??
  15. =====================================================================??
  16. ??
  17. 关键字?????线程序列?????S?时间下限??
  18. -------?----?-------?-?----------??
  19. 96??????1????167?????A?10-7月?-13??
  20. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_167_8XSOXYGH_.ARC??
  21. ??
  22. 97??????1????168?????A?10-7月?-13??
  23. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_168_8XSOY383_.ARC??
  24. ??
  25. 98??????1????169?????A?10-7月?-13??
  26. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_169_8XSOY9R0_.ARC??
  27. ??
  28. 99??????1????170?????A?10-7月?-13??
  29. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_170_8XSOYH2F_.ARC??
  30. ??
  31. 100?????1????171?????A?10-7月?-13??
  32. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_171_8XT08TB7_.ARC??
  33. ??
  34. 101?????1????172?????A?10-7月?-13??
  35. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_172_8XT08TGG_.ARC??
  36. ??
  37. 102?????1????173?????A?10-7月?-13??
  38. ????????名称:?D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_173_8XT0900C_.ARC??
  39. ??
  40. ??
  41. 是否确定要删除以上对象?(输入?YES?或?NO)???
  42. ??
  43. 是否确定要删除以上对象?(输入?YES?或?NO)??yes??
  44. 已删除的归档日志??
  45. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_167_8XSOXYGH_.ARC?RECID=96?ST??
  46. AMP=820410050??
  47. 已删除的归档日志??
  48. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_168_8XSOY383_.ARC?RECID=97?ST??
  49. AMP=820410057??
  50. 已删除的归档日志??
  51. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_169_8XSOY9R0_.ARC?RECID=98?ST??
  52. AMP=820410062??
  53. 已删除的归档日志??
  54. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_170_8XSOYH2F_.ARC?RECID=99?ST??
  55. AMP=820410067??
  56. 已删除的归档日志??
  57. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_171_8XT08TB7_.ARC?RECID=100?S??
  58. TAMP=820420638??
  59. 已删除的归档日志??
  60. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_172_8XT08TGG_.ARC?RECID=101?S??
  61. TAMP=820420638??
  62. 已删除的归档日志??
  63. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_173_8XT0900C_.ARC?RECID=102?S??
  64. TAMP=820420643??
  65. 7?对象已删除??

其实方法还有很多

?

1:增大db_recovery_file_dest_size值

2:更换归档日志路径

3:检查失效的归档日志文件,然后删除

[csharp]?view plaincopyprint??
  1. C:\Users\Administrator>rman??target?/??
  2. ??
  3. 恢复管理器:?Release?11.2.0.1.0?-?Production?on?星期三?7月?10?15:41:53?2013??
  4. ??
  5. Copyright?(c)?1982,?2009,?Oracle?and/or?its?affiliates.??All?rights?reserved.??
  6. ??
  7. 已连接到目标数据库:?ORCL?(DBID=1336354077,?未打开)??
  8. ??
  9. RMAN>?crosscheck?archivelog?all;??
  10. ??
  11. 使用目标数据库控制文件替代恢复目录??
  12. 分配的通道:?ORA_DISK_1??
  13. 通道?ORA_DISK_1:?SID=189?设备类型=DISK??
  14. 对归档日志的验证成功??
  15. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_174_8XT1VGG9_.ARC?RECID=103?S??
  16. TAMP=820422255??
  17. 对归档日志的验证成功??
  18. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_175_8XT1WOMS_.ARC?RECID=104?S??
  19. TAMP=820422294??
  20. 对归档日志的验证成功??
  21. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_176_8XT1Y02X_.ARC?RECID=105?S??
  22. TAMP=820422338??
  23. 对归档日志的验证成功??
  24. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_177_8XT1Z783_.ARC?RECID=106?S??
  25. TAMP=820422377??
  26. 对归档日志的验证成功??
  27. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_178_8XT20GWL_.ARC?RECID=107?S??
  28. TAMP=820422416??
  29. 对归档日志的验证成功??
  30. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_179_8XT21P6K_.ARC?RECID=108?S??
  31. TAMP=820422458??
  32. 对归档日志的验证成功??
  33. 归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2013_07_10\O1_MF_1_180_8XT231SN_.ARC?RECID=109?S??
  34. TAMP=820422499??
  35. 已交叉检验的?7?对象??

?

?

如何删除参考:http://www.blogjava.net/decode360/archive/2009/06/25/287747.html

?

其实本身我的Oracle是非归档模式,前一段时间进行了测试切换成归档模式了,所以导致今天的问题,那么这次就直接切换成非归档模式

[csharp]?view plaincopyprint??
  1. SQL>?conn?/?as?sysdba??
  2. 已连接。??
  3. SQL>?archive?log?list??
  4. 数据库日志模式????????????存档模式??
  5. 自动存档?????????????启用??
  6. 存档终点????????????USE_DB_RECOVERY_FILE_DEST??
  7. 最早的联机日志序列?????178??
  8. 下一个存档日志序列???180??
  9. 当前日志序列???????????180??
  10. ??
  11. SQL>?shutdown?immediate;??
  12. 数据库已经关闭。??
  13. 已经卸载数据库。??
  14. ORACLE?例程已经关闭。??
  15. ??
  16. SQL>?startup?mount;??
  17. ORACLE?例程已经启动。??
  18. ??
  19. Total?System?Global?Area?5110898688?bytes??
  20. Fixed?Size??????????????????2184592?bytes??
  21. Variable?Size????????????3355445872?bytes??
  22. Database?Buffers?????????1744830464?bytes??
  23. Redo?Buffers????????????????8437760?bytes??
  24. 数据库装载完毕。??
  25. SQL>?alter?database?noarchivelog;??
  26. ??
  27. 数据库已更改。??
  28. ??
  29. SQL>?alter?database?open;??
  30. ??
  31. 数据库已更改。??
  32. ??
  33. SQL>?archive?log?list;??
  34. 数据库日志模式?????????????非存档模式??
  35. 自动存档?????????????禁用??
  36. 存档终点????????????USE_DB_RECOVERY_FILE_DEST??
  37. 最早的联机日志序列?????179??
  38. 当前日志序列???????????181??

?

?

收获:以前Oracle出现问题,基本上就不去理会,要么重装,要么重装,那Oracle根本学不到什么东西

? ? ? ? ? ?以后出现问题,要多思考多研究,每一个事例都是一个学习的机会,这样才能有进步啊

热点排行