ERROR:
ORA-00257: archiver error. Connect internal only, until freed.
(1)SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES MEMBERS ARC STATUS FIRST_CHANGE# FIRST_TIM
发现所有的arc 为NO,表示系统没法自动做归档。
(3)手工切换日志
SQL> alter system switch logfile;
alter system switch logfile
*
第1行出现错误:
ORA-01013: 用户请求取消当前的操作
在等待长时间没反应后,中断操作,手工切换日志没有成功。
(4)查看报警日志文件,发现有日志不能归档的错误信息。
$ tail -100 alert_devdb1.log
(5)SQL> select * from v$recovery_file_dest;
发现该数据库应用ASM为归档贮存
(6)SQL>select * from v$flash_recovery_area_usage;
发现ARCHIVELOG PERCENT_SPACE_USED已超过90%;
(7)删除归档日志,方法有多种,可以用asmcmd直接删除日志文件,然后
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;
推荐直接用RMAN做日志备份与删除,参考http://download.Oracle.com/docs/cd/B12037_01/server.101/b10734/rcmbackp.htm:
RMAN> backup archivelog all delete input;
以下命令备份日志,并删除一周前的所有日志:
BACKUP ARCHIVELOG ALL;
DELETE COPY OF ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';