Oracle归档日志 ORA-00257:archiver error解决办法 清理Oracle归档日志

朱雀 2022-05-11 04:50 451阅读 0赞

ORA-00257:archiver error解决办法

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

ORA-00257:archiver error解决办法

工具/原料

  • 数据库Oracle 10.2.0.1.0
  • SecureCRT 任意ssh连接工具都可以

方法/步骤

  1. SecureCRT登录服务器,切换用户oracle,连接oracle

    [root@userbeta~]# su - oracle

    [oracle@userbeta~]$ sqlplus /nolog

    SQL> connect /as sysdba

    ORA-00257:archiver error解决办法

  2. 检查flash recovery area的使用情况,可以看见archivelog已经很大了,达到99.94

    SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

    ORA-00257:archiver error解决办法

  3. 计算flash recovery area已经占用的空间

    SQL> select sum(percent_space_used)*3/100 from v$flash_recovery_area_usage;

    ORA-00257:archiver error解决办法

  4. 修改FLASH_RECOVERY_AREA的空间修改为6GB,修改前确认磁盘有足够空间

    SQL> ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE=8g;

    ORA-00257:archiver error解决办法

  5. 现在来清理一下archivelog归档日志,生产环境建议备份

    查询日志目录位置

    show parameter recover;

    删除归档日志,USERDB是数据库实例名

    cd /u01/app/oracle/flash_recovery_area/USERDB/archivelog

    使用root帐户删除该目录下的文件或者备份其它地方

    ORA-00257:archiver error解决办法

  6. 使用rman 操作,内容太多,只做部分截图

    [oracle@userbeta archivelog]$ rman

    RMAN> connect target sys/sys_passwd

    crosscheck backup;

    delete obsolete;

    delete expired backup;

    crosscheck archivelog all;

    delete expired archivelog all;

    //此步会有提示,输入 YES 回车

    host; //退出rman

    ORA-00257:archiver error解决办法

  7. 确认是否操作成功

    # sqlplus /nolog

    SQL> connect /as sysdba

    SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;

    ORA-00257:archiver error解决办法

  8. 删除完成,重新连接数据库

    ORA-00257:archiver error解决办法

https://jingyan.baidu.com/article/3065b3b6e202ccbecef8a411.html

发表评论

表情:
评论列表 (有 0 条评论,451人围观)

还没有评论,来说两句吧...

相关阅读

    相关 oracle归档

      一、归档日志     是联机重做日志组文件的一个副本     包含redo记录以及一个唯一的log sequence number     对日志组中的一