闪回恢复区无可用空间带来的问题及解决
来源:互联网 发布:python自动化运维平台 编辑:程序博客网 时间:2024/06/11 11:11
测试Oracle版本为11.2.0.1
1、闪回恢复区没有可用空间,于是手动删除其中的归档日志,问题并没有解决,于是修改参数并重启数据库:
alter system set db_recovery_file_dest_size=10G scope=spfile;
2、随后发现RMAN无法每天备份了,日志如下:
Starting backup at 04-JAN-15
current log archived
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 01/04/2015 23:30:06
RMAN-06059: expected archived log not found, loss of archived log compromises recoverability
ORA-19625: error identifying file /u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2014_12_26/o1_mf_1_6_b9smjw3v_.arc
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
3、过了几天数据库连不上,还是因为闪回恢复区没有空间了,告警日志内容如下:
ARC3: Archival started
ARC0: STARTING ARCH PROCESSES COMPLETE
Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb/trace/testdb_arc0_2711.t
rc:
ORA-19815: WARNING: db_recovery_file_dest_size of 10737418240 bytes is 100.00% u
sed, and has 0 remaining bytes available.
USER (ospid: 2497): terminating the instance due to error 16038
Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb/trace/testdb_arc1_2501.t
rc:
ORA-19815: WARNING: db_recovery_file_dest_size of 10737418240 bytes is 100.00% u
sed, and has 0 remaining bytes available.
************************************************************************
You have following choices to free up space from recovery area:
1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
then consider changing RMAN ARCHIVELOG DELETION POLICY.
2. Back up files to tertiary device such as tape using RMAN
BACKUP RECOVERY AREA command.
3. Add disk space and increase db_recovery_file_dest_size parameter to
reflect the new space.
4. Delete unnecessary files using RMAN DELETE command. If an operating
system command was used to delete files, then use RMAN CROSSCHECK and
DELETE EXPIRED commands.
************************************************************************
4、原因
虽然手动删除归档日志,但是oracle中记录的关于闪回恢复区使用情况的信息并没有更新,导致闪回恢复区仍然空间不足,除非扩大空间。
RMAN无法备份是因为RMAN找不到预期的归档日志,所以终止备份过程。
5、解决方法
在RMAN中删除归档
RMAN> crosscheck archivelog all;
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=199 device type=DISK
validation failed for archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_319_bby147rw_.arc RECID=314 STAMP=868516103
validation failed for archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_320_bby7tn4f_.arc RECID=315 STAMP=868522964
Crosschecked 2 objects
RMAN> delete expired archivelog all;
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=199 device type=DISK
List of Archived Log Copies for database with db_unique_name TESTDB
=====================================================================
Key Thrd Seq S Low Time
------- ---- ------- - ---------
314 1 319 X 08-JAN-15
Name: /u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_319_bby147rw_.arc
315 1 320 X 09-JAN-15
Name: /u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_320_bby7tn4f_.arc
Do you really want to delete the above objects (enter YES or NO)? y
deleted archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_319_bby147rw_.arc RECID=314 STAMP=868516103
deleted archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_320_bby7tn4f_.arc RECID=315 STAMP=868522964
Deleted 2 EXPIRED objects
最后查询确认闪回恢复区空间是否释放
SQL> SELECT substr(name, 1, 30) name, space_limit/1024/1024/1024 AS limit,
2 space_used AS used,
3 space_reclaimable AS reclaimable,
4 number_of_files AS files
5 FROM v$recovery_file_dest ;
NAME LIMIT
------------------------------------------------------------ ----------
USED RECLAIMABLE FILES
---------- ----------- ----------
/u01/app/oracle/flash_recovery 10
0 0 0
1、闪回恢复区没有可用空间,于是手动删除其中的归档日志,问题并没有解决,于是修改参数并重启数据库:
alter system set db_recovery_file_dest_size=10G scope=spfile;
2、随后发现RMAN无法每天备份了,日志如下:
Starting backup at 04-JAN-15
current log archived
released channel: c1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 01/04/2015 23:30:06
RMAN-06059: expected archived log not found, loss of archived log compromises recoverability
ORA-19625: error identifying file /u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2014_12_26/o1_mf_1_6_b9smjw3v_.arc
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3
3、过了几天数据库连不上,还是因为闪回恢复区没有空间了,告警日志内容如下:
ARC3: Archival started
ARC0: STARTING ARCH PROCESSES COMPLETE
Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb/trace/testdb_arc0_2711.t
rc:
ORA-19815: WARNING: db_recovery_file_dest_size of 10737418240 bytes is 100.00% u
sed, and has 0 remaining bytes available.
USER (ospid: 2497): terminating the instance due to error 16038
Errors in file /u01/app/oracle/diag/rdbms/testdb/testdb/trace/testdb_arc1_2501.t
rc:
ORA-19815: WARNING: db_recovery_file_dest_size of 10737418240 bytes is 100.00% u
sed, and has 0 remaining bytes available.
************************************************************************
You have following choices to free up space from recovery area:
1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard,
then consider changing RMAN ARCHIVELOG DELETION POLICY.
2. Back up files to tertiary device such as tape using RMAN
BACKUP RECOVERY AREA command.
3. Add disk space and increase db_recovery_file_dest_size parameter to
reflect the new space.
4. Delete unnecessary files using RMAN DELETE command. If an operating
system command was used to delete files, then use RMAN CROSSCHECK and
DELETE EXPIRED commands.
************************************************************************
4、原因
虽然手动删除归档日志,但是oracle中记录的关于闪回恢复区使用情况的信息并没有更新,导致闪回恢复区仍然空间不足,除非扩大空间。
RMAN无法备份是因为RMAN找不到预期的归档日志,所以终止备份过程。
5、解决方法
在RMAN中删除归档
RMAN> crosscheck archivelog all;
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=199 device type=DISK
validation failed for archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_319_bby147rw_.arc RECID=314 STAMP=868516103
validation failed for archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_320_bby7tn4f_.arc RECID=315 STAMP=868522964
Crosschecked 2 objects
RMAN> delete expired archivelog all;
released channel: ORA_DISK_1
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=199 device type=DISK
List of Archived Log Copies for database with db_unique_name TESTDB
=====================================================================
Key Thrd Seq S Low Time
------- ---- ------- - ---------
314 1 319 X 08-JAN-15
Name: /u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_319_bby147rw_.arc
315 1 320 X 09-JAN-15
Name: /u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_320_bby7tn4f_.arc
Do you really want to delete the above objects (enter YES or NO)? y
deleted archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_319_bby147rw_.arc RECID=314 STAMP=868516103
deleted archived log
archived log file name=/u01/app/oracle/flash_recovery_area/TESTDB/archivelog/2015_01_09/o1_mf_1_320_bby7tn4f_.arc RECID=315 STAMP=868522964
Deleted 2 EXPIRED objects
最后查询确认闪回恢复区空间是否释放
SQL> SELECT substr(name, 1, 30) name, space_limit/1024/1024/1024 AS limit,
2 space_used AS used,
3 space_reclaimable AS reclaimable,
4 number_of_files AS files
5 FROM v$recovery_file_dest ;
NAME LIMIT
------------------------------------------------------------ ----------
USED RECLAIMABLE FILES
---------- ----------- ----------
/u01/app/oracle/flash_recovery 10
0 0 0
0 0
- 闪回恢复区无可用空间带来的问题及解决
- 64位JVM带来的问题及解决
- javascript中ajax框架及解决缓存带来的问题
- GHOST带来的数据恢复问题
- ip变更造成的redis集群不可用的解决及数据备份和恢复
- 获取SD的大小及可用空间
- 优化大师带来的灾难及redo重建-oracle数据库恢复
- VMware12安装Centos7 64位 解决无可用网络问题
- Android安装应用后点击"打开"(Open)带来的问题及解决方式
- 在listview中嵌入viewpager带来的卡顿问题及解决
- Android安装应用后点击,打开.(Open)带来的问题及解决方式
- Android安装应用后点击打开(Open)带来的问题及解决方式
- 无备份情况下表空间损坏的恢复
- XmlSerializer带来的性能问题及解决办法
- 数据文件缩小,带来的问题及测试
- asp.net 无cookie会话带来的问题
- Http协议无状态带来的问题和解决方法
- CodeBlocks恢复最初设置,解决无编译器问题
- [PHP基础] 分享一个PHP经典面试题
- MVC入门篇
- GCC link option
- 《算法竞赛入门经典(第2版)》刘汝佳读后感
- leetcode-Permutations
- 闪回恢复区无可用空间带来的问题及解决
- 多线程(一)——多线程编程主要考虑的两大问题
- eclipse开发cocos2dx 3.2环境搭建之二: cocos2dx 3.2安装及测试运行 (An internal error occurred during: "C/C++ Indexe)
- iOS音视频SDK开发技术解决方案
- 2015年学习方向
- iOS 跳转出现attempt to dismiss modal view controller whose view does not currently ……的解决方案
- DECLARE_DYNAMIC、IMPLEMENT_DYNAMIC
- ant build.xml 打包应三方jar注意的问题与混淆R的写法
- React官方API:Top-Level API