ORACLE开启闪回查询功能后,需要定期删除归档日志。若日志文档超出设置的空间大小,则会报ORA-00257错误。
错误详情
ORA-00257: archiver error. Connect internal only, until freed
辅助工作 / sqlplus
# 查看 archive log show parameter log_archive_dest; # 查看 log sequence archive log list; # 查看 flash recovery area select * from V$FLASH_RECOVERY_AREA_USAGE; # 查看日志所在目录及日志空间设置 show parameter db_recovery_file_dest;
清理日志 / rman
rman target sys/password # 检查无用的日志 crosscheck archivelog all; # 删除过期的日志 delete expired archivelog all; # 删除15天前的日志 delete archivelog until time 'sysdate-15' ; # 删除 log sequence 为15及15之前的所有归档日志 delete archivelog until sequence 15; # 删除15天以前的归档日志,但不删除闪回区有效的归档日志 delete archivelog all completed before 'sysdate-15'; # 清除所有归档日志 delete noprompt archivelog all completed before 'sysdate'; # 删除指定到某时间的归档日志 delete archivelog until time "to_date('2016-10-09 13:00:00','yyyy-mm-dd hh24:mi:ss')";
原创文章禁止转载:技术学堂 » Oracle数据库归档日志满的解决方法