ORACLE开启闪回查询功能后,需要定期删除归档日志。若日志文档超出设置的空间大小,则会报ORA-00257错误。
错误详情
1 |
ORA-00257: archiver error. Connect internal only, until freed |
辅助工作 / sqlplus
1 2 3 4 5 6 7 8 9 10 11 |
# 查看 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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
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数据库归档日志满的解决方法