ORA-00257: archiver error. Connect internal only, until freed.
Oracle 10g数据库物理空间管理方式与以前Oracle发生了变化,对归档日志所在的Flash_Recovery_Area空间进行了另外限制 Flash_Recovery_Area空间缺省安装时比较小,只有2GB,容易用完
解决过程 根据数据库目前可用存储空间情况、FLASH_RECOVERY_AREA空间为2GB的实际情况,把FLASH_RECOVERY_AREA的空间修改为20GB()。 SQL> alter system set DB_RECOVERY_FILE_DEST_SIZE=20g; 系统已更改。
(其实问题的本质是归档日志的使用已经达到了spfile等启动参数文件中指定的最大值。oracle 10g中归档日志默认的存放地是闪回目录,即%ORACLE_BASE%/flash_recovery_area的相应实例名下面,这个位置的大小在参数文件中有个限制,解决空间不足的问题可以通过两种方式来实现,一个修改这个大小限制,还有一个就是修改归档日志存放位置。)
如果不要这些archivelog的话,可以删除一些
rman>DELETE NOPROMPT ARCHIVELOG UNTIL TIME 'SYSDATE-3'; 直接运行这条 这样会只保留三天的归档
SQL> select * from v$flash_recovery_area_usage; FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES -------------------- ------------------ ------------------------- --------------- CONTROL FILE 0 0 0 REDO LOG 0 0 0 ARCHIVED LOG 27.39 0 82 BACKUP PIECE 11.37 0 2 IMAGE COPY 0 0 0 FLASHBACK LOG 0 0 0 FOREIGN ARCHIVED LOG 0 0 0 7 rows selected.
还可参考:http://www.eygle.com/archives/2004/12/rman_crosscheck.html