清除oracle归档日志 清除oracle归档日志 1. 连接oracle报如下错误 2. 以超级管理员身份进入数据库查看归档日志 3. 清除归档日志 4. 再次查询flash recovery area的使用情况 附录

1. 连接oracle报如下错误

ORA-00257: archiver error. Connect internal only, until freed

产生原因:出现ORA-00257错误(空间不足错误),通过查找资料,绝大部分说这是由于归档日志太多,占用了全部的硬盘剩余空间导致的,通过简单删除日志或加大存储空间就能够解决

2. 以超级管理员身份进入数据库查看归档日志

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                             .2                         0

              3

ARCHIVED LOG                      98.16                         0

           1895

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE

-------------------- ------------------ -------------------------

NUMBER_OF_FILES

---------------

BACKUP PIECE                          0                         0

              0

IMAGE COPY                            0                         0

              0

FLASHBACK LOG                       .07                       .07

              4

FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE

-------------------- ------------------ -------------------------

NUMBER_OF_FILES

---------------

FOREIGN ARCHIVED LOG                  0                         0

              0

7 rows selected.

占用98%

3. 清除归档日志

rman  target sys/password

检查一些无用的archivelog

RMAN>crosscheck archivelog all;

RMAN>delete archivelog until time ‘sysdate-1’;

备注:delete archivelog all; ###全部干掉

4. 再次查询flash recovery area的使用情况

SQL> select * from v$flash_recovery_area_usage;

附录

http://blog.csdn.net/cw370008359/article/details/51023794

备注:dg集群切换为单节点,alter system set log_archive_dest_state_2="defer";

http://blog.csdn.net/robbie1314520/article/details/8267283 ###dg集群切换