Oracle中报错Connect internal only, until freed

2014-11-24 17:40:51 · 作者: · 浏览: 0

有两种方法可以解决,第一种是删除归档日志,第二种是增大闪回日志文件的最大大小



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 99.9 0 3
BACKUPPIECE 0 0 0
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0

可以看出,ARCHIVELOG日志已经达到99.9%了。要把它清除掉!

========= 删除归档日志 =========
第一步: 直接删除 物理数据 rm
第二步:通过 rman 删除:
oracle@linux112:/opt/oracle/> rman
Recovery Manager: Release 11.1.0.7.0 - Production on Mon Sep 3 11:47:06 2012
Copyright (c) 1982, 2007, Oracle. All rights reserved.
RMAN> connect target sys/sys_passwd

执行如下命令:
(1) crosscheck backup;
(2) delete obsolete;
(3) delete expired backup;
(4) crosscheck archivelog all;
(5) delete expired archivelog all;
(6) host;


第二种方法 : 就是增大闪回日志文件的最大大小。如下

alter system set DB_RECOVERY_FILE_DEST_SIZE=10g