ORA-19809 超出了恢复文件数的限制

转自:http://space.itpub.net/10583980/viewspace-503920

 

1:登陆:


sqlplus /nolog

SQL> connect sys/123 as sysdba;

 

SQL> shutdown normal
ORA-01109: 数据库未打开


已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount;
ORACLE 例程已经启动。

Total System Global Area 171966464 bytes
Fixed Size                   787988 bytes
Variable Size             145750508 bytes
Database Buffers           25165824 bytes
Redo Buffers                 262144 bytes
数据库装载完毕。

2:alter database open时出现错误

ORA-16038: 日志 3 序列号 160 无法归档
ORA-19809: 超出了恢复文件数的限制
ORA-00312: 联机日志 3 线程 1:
'D:/ORACLE/PRODUCT/10.2.0/ORADATA/ORCL/REDO03.LOG'

3:以下是解决

sql> select * from v$recovery_file_dest;

SPACE_LIMIT SPACE_USED SPACE_RECLAIMABLE NUMBER_OF_FILES
----------- ---------- ----------------- ---------------
D:/oracle/product/10.2.0/flash_recovery_area
2147483648 2233146368                  0               29

可见容量已经满了.


SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=8G SCOPE=BOTH;

系统已更改。

SQL> alter database open;

数据库已更改。

select * from v$log;
SQL> select * from v$flash_recovery_area_usage;

FILE_TYPE     PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE                    0                          0                0
ONLINELOG                      0                          0                0
ARCHIVELOG                  6.91                          0               31
BACKUPPIECE                 4.45                          0                2
IMAGECOPY                      0                          0                0
FLASHBACKLOG                   0                          0                0

已选择6行。
ARCHIVELOG    6.91%,BACKUPPIECE 4.45 %

如果是手动删除磁盘的文件,需要 crosscheck archivelog all; delete expired archivelog all;

C:/datadumps>rman target /

恢复管理器: Release 10.2.0.1.0 - Production on 星期二

Copyright (c) 1982, 2005, Oracle.   All rights reserved.

连接到目标数据库: ORCL (DBID=1127021099)

RMAN> crosscheck archivelog all;

使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=145 devtype=DISK
对归档日志的验证成功



另外我的归档日志长时间都是自己手动清除的,而没有清除数据库的记录,导致了错误的发生;也可以用rman的策略进行删除:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 6 DAYS;
CONFIGURE RETENTION POLICY TO REDUNDANCY 6;
CONFIGURE RETENTION POLICY TO NONE;

 

你可能感兴趣的:(oracle,文章)