zoukankan      html  css  js  c++  java
  • ORA-00313错误 及其 解决方法

    ORA-00313: open failed for members of log group 1 of thread 1
    ORA-00312: online log 1 thread 1: 'D:ORACLEORADATATESTREDO01.LOG'
    ORA-27041: unable to open file
    OSD-04002: unable to open file
    O/S-Error: (OS 2) 系统找不到指定的文件

    2、查看V$log,发现是当前日志
    SQL> select group#,sequence#,archived,status from v$log;

    GROUP#   SEQUENCE# ARCHIVED STATUS
    ---------- ---------- -------- ----------------
          1       1 NO    CURRENT
          2       2 YES    INACTIVE
          3       3 YES    INACTIVE

    3、发现clear不成功
    SQL> alter database clear unarchived logfile group 1;
    alter database clear unarchived logfile group 1
    *
    ERROR at line 1:
    ORA-01624: log 1 needed for crash recovery of thread 1
    ORA-00312: online log 1 thread 1: 'D:ORACLEORADATATESTREDO01.LOG'

    4、把数据库down
       SQL>shutdown immediate

    5、在init<sid>.ora中加入如下参数
    _allow_resetlogs_corruption=TRUE

    6、重新启动数据库,利用until cancel恢复
    SQL>recover database until cancel;
    Cancel
    如果出错,不再理会,发出
    SQL>alter database open resetlogs;

    7、数据库被打开后,马上执行一个full export

    8shutdown数据库,去掉_all_resetlogs_corrupt参数

    9、重建库

    10import并完成恢复

    11、建议执行一下ANALYZE TABLE ...VALIDATE STRUCTURE CASCADE;
    说明:
    1、该恢复方法是没有办法之后的恢复方法,一般情况下建议不要采用,因为该方法可能导致数据库的不一致
    2、该方法也丢失数据,但是丢失的数据没有上一种方法的数据多,主要是未写入数据文件的已提交或未提交数据。
    3、建议成功后严格执行以上的711步,完成数据库的检查与分析
    4、全部完成后做一次数据库的全备份
    5、建议联机日志文件一定要实现镜相在不同的磁盘上,避免这种情况的发生,因为任何数据的丢失对于生产来说都是不容许的。

  • 相关阅读:
    python-scapy学习笔记-(1)
    python系统性能模块笔记
    Python爬虫总结
    pm2的的常用命令及用法
    Javascript的map与forEach的区别
    对MVVM思想的在认识
    RN的打包
    undefined与null的区别
    rem与em的区别
    JS的函数参数传递为值传递
  • 原文地址:https://www.cnblogs.com/siyunianhua/p/3842585.html
Copyright © 2011-2022 走看看