天天看点

ORA-00257: archiver error. Connect internal only, until freed归档日志满了

1,去到服务器 ,在cmd 中connect /as sysdba

ORA-00257: archiver error. Connect internal only, until freed归档日志满了

2,检查flash recovery area的使用情况,archivelog已达到99.55

SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

ORA-00257: archiver error. Connect internal only, until freed归档日志满了

3,查找archivelog归档日志文件的位置和设置大小,生产环境建议备份

查询日志目录位置,还可以查看归档文件设置的大小

show parameter recover;

ORA-00257: archiver error. Connect internal only, until freed归档日志满了

4,(1)第一种解决办法:使用RMAN清除归档日志。

C:\Users\Administrator>rman

RMAN> connect target 用户名/密码@orcl //连接

RMAN> crosscheck archivelog all; //检查控制文件和实际物理文件的差别。

RMAN> delete expired archivelog all; //就是同步控制文件的信息和实际物理文件的信息。

RMAN> delete archivelog until time ‘sysdate-7’ ; //删除7天前的归档

(1)第二种解决办法:增大闪回恢复区的大小。

SQL>alter system set DB_RECOVERY_FILE_DEST_SIZE=5G; //根据第三步中查询的文件大小进行设置。

5、操作完后可再次查看归档日志的使用情况,已下降

ORA-00257: archiver error. Connect internal only, until freed归档日志满了

!!!中间很多原理其实并不懂,希望可以留言有更多指正。