IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    从ORA-00283 ORA-16433报错开始恢复

    惜分飞发表于 2024-02-03 14:11:36
    love 0

    联系:手机/微信(+86 17813235971) QQ(107644445)QQ咨询惜分飞

    标题:从ORA-00283 ORA-16433报错开始恢复

    作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]

    接手一个客户无法正常启动的故障数据库,尝试recover 报ORA-00283 ORA-16433错误

    [oracle@xff trace]$ sqlplus / as sysdba
    
    SQL*Plus: Release 12.1.0.2.0 Production on Sat Jan 27 04:46:23 2024
    
    Copyright (c) 1982, 2014, Oracle.  All rights reserved.
    
    
    ???:
    Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
    With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
    
    SQL> show pdbs;
    SQL> select open_mode from v$database;
    
    OPEN_MODE
    --------------------
    MOUNTED
    
    SQL>
    SQL> recover database;
    ORA-00283: recovery session canceled due to errors
    ORA-16433: The database must be opened in read/write mode
    

    通过对控制文件进行处理,再次尝试recover库

    SQL> recover database;
    ORA-00399: corrupt change description in redo log
    ORA-00353: log corruption near block 134877 change 3249721295 time 01/27/2024 00:21:05
    ORA-00312: online log 1 thread 1:'/u01/app/oracle/oradata/xff/redo01.log'
    

    由于redo和数据文件不匹配,无法正常recover库,尝试强制打开库报ORA-600 2662错误

    SQL> alter database open resetlogs;
    alter database open resetlogs
    *
    ERROR at line 1:
    ORA-00603: ORACLE server session terminated by fatal error
    ORA-00600: internal error code, arguments: [2662], [0], [3249721308], [0],[3249730440], [16777344],[],[],[],[],[],[]
    ORA-00600: internal error code, arguments: [2662], [0], [3249721307], [0],[3249730440], [16777344],[],[],[],[],[],[]
    ORA-01092: ORACLE instance terminated. Disconnection forced
    ORA-00600: internal error code, arguments: [2662], [0], [3249721303], [0],[3249730440], [16777344],[],[],[],[],[],[]
    Process ID: 117336
    Session ID: 1146 Serial number: 11764
    

    基于这种错误,尝试oradebug修改scn

    SQL> oradebug setmypid
    oradebug DUMPvar SGA kcsgscn_
    Statement processed.
    SQL> kcslf kcsgscn_ [06001FBB0, 06001FBE0) = 00000000 00000000 00000000 00000000 00000000 
    SQL> oradebug poke 0x06001FBB0 4 0x10000000
    oradebug DUMPvar SGA kcsgscn_
    ORA-32521: error parsing ORADEBUG command:
    

    发现报ORA-32521错误,证明常规的oradebug方法无法修改scn,参考相关文章:
    oradebug poke ORA-32521/ORA-32519故障解决
    第一次通过其他方法处理,由于计算失误导致数据库启动报ORA-600 2252错误

    SQL> ALTER DATABASE OPEN RESETLOGS;
    ALTER DATABASE OPEN RESETLOGS
    *
    ERROR at line 1:
    ORA-00600: internal error code, arguments: [2252], [45264], [0], [11641],[3340959744], [],[],[],[],[],[]
    

    该错误是相关文章参考:
    记录一次ORA-00600[2252]故障解决
    ORA-00600: internal error code, arguments: [2252], [3987]
    主机断电系统回到N年前数据库报ORA-600 kcm_headroom_warn_1错误
    处理正确的scn值之后,数据库open成功,然后逻辑方式导出数据,恢复工作完成

    SQL> alter database open ;
    
    Database altered.
    
    
    • ORA-00603 ORA-01092 ORA-600 kcbzib_kcrsds_1
    • ORA-00600: internal error code, arguments: [2252], [3987]
    • ora-600 2662和ora-600 kclchkblk_4恢复
    • oradebug poke ORA-32521/ORA-32519故障解决
    • 硬件故障恢复出文件之后数据库故障处理
    • 分享一次ORA-01113 ORA-01110故障处理过程
    • 数据库启动报ORA-600 kcbgtcr_13处理
    • Oracle 19c 断电异常恢复
    • ORA-600 kcrf_resilver_log_1故障处理
    • ORA-00600: internal error code, arguments: [6006], [1], [], [], [], [], [], []
    • 正常open库报ORA-600 2662,ORA-600 4097错误
    • Patch SCN工具快速解决ORA-600 2662问题


沪ICP备19023445号-2号
友情链接