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

    ORA-01092 ORA-00604 ORA-08103故障处理

    惜分飞发表于 2024-07-15 08:20:20
    love 0

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

    标题:ORA-01092 ORA-00604 ORA-08103故障处理

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

    数据库启动报

    SQL> alter database open;
    alter database open
    *
    第 1 行出现错误:
    ORA-01092: ORACLE instance terminated. Disconnection forced
    ORA-00604: error occurred at recursive SQL level 1
    ORA-08103: object no longer exists
    进程 ID: 39348
    会话 ID: 67 序列号: 29322
    

    对应的alert日志

    Mon Jul 15 10:59:46 2024
    SMON: enabling cache recovery
    Mon Jul 15 10:59:46 2024
    Undo initialization finished serial:0 start:302658203 end:302658218 diff:15 ms (0.0 seconds)
    Verifying minimum file header compatibility (11g) for tablespace encryption..
    Verifying 11g file header compatibility for tablespace encryption completed
    Mon Jul 15 10:59:46 2024
    SMON: enabling tx recovery
    Mon Jul 15 10:59:46 2024
    Database Characterset is UTF8
    Mon Jul 15 10:59:46 2024
    Errors in file C:\APP\XFF\diag\rdbms\xff\xff\trace\xff_ora_46664.trc:
    ORA-00604: 递归 SQL 级别 1 出现错误
    ORA-08103: 对象不再存在
    Mon Jul 15 10:59:46 2024
    Errors in file C:\APP\XFF\diag\rdbms\xff\xff\trace\xff_ora_46664.trc:
    ORA-00604: 递归 SQL 级别 1 出现错误
    ORA-08103: 对象不再存在
    Error 604 happened during db open, shutting down database
    USER (ospid: 46664): terminating the instance due to error 604
    Starting background process ARC2
    Process ARC2 submission failed with error = 1092
    Mon Jul 15 10:59:47 2024
    Errors in file C:\APP\XFF\diag\rdbms\xff\xff\trace\xff_arc0_33164.trc:
    ORA-00444: 后台进程 "ARC2" 启动失败
    ORA-01092: ORACLE 实例终止。强制断开连接
    Mon Jul 15 10:59:51 2024
    Instance terminated by USER, pid = 46664
    ORA-1092 signalled during: alter database open...
    opiodr aborting process unknown ospid (46664) as a result of ORA-1092
    

    跟踪启动过程发现delete from histgrm$ where obj# = :1遭遇到ORA-08103错误

    =====================
    PARSING IN CURSOR #18135904 lid=0 tim=302295369306 hv=3667723989 ad='7ffda7f5b500' sqlid='2mp99nzd9u1qp'
    delete from histgrm$ where obj# = :1
    END OF STMT
    PARSE #18135904:c=0,e=1191,p=0,cr=44,cu=0,mis=1,r=0,dep=1,og=4,plh=0,tim=302295369306
    BINDS #16769312:
     Bind#0
      oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
      oacflg=00 fl2=1000001 frm=00 csi=00 siz=48 off=0
      kxsbbbfp=01144048  bln=22  avl=02  flg=05
      value=66
     Bind#1
      oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
      oacflg=00 fl2=1000001 frm=00 csi=00 siz=0 off=24
      kxsbbbfp=01144060  bln=22  avl=02  flg=01
      value=1
    EXEC #16769312:c=0,e=85,p=0,cr=0,cu=0,mis=0,r=0,dep=2,og=3,plh=2239883476,tim=302295369571
    FETCH #16769312:c=0,e=7,p=0,cr=4,cu=0,mis=0,r=1,dep=2,og=3,plh=2239883476,tim=302295369592
    CLOSE #16769312:c=0,e=4,dep=2,type=3,tim=302295369610
    BINDS #16769312:
     Bind#0
      oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
      oacflg=00 fl2=1000001 frm=00 csi=00 siz=48 off=0
      kxsbbbfp=01144048  bln=22  avl=02  flg=05
      value=66
     Bind#1
      oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
      oacflg=00 fl2=1000001 frm=00 csi=00 siz=0 off=24
      kxsbbbfp=01144060  bln=22  avl=02  flg=01
      value=2
    EXEC #16769312:c=0,e=79,p=0,cr=0,cu=0,mis=0,r=0,dep=2,og=3,plh=2239883476,tim=302295369724
    FETCH #16769312:c=0,e=6,p=0,cr=4,cu=0,mis=0,r=1,dep=2,og=3,plh=2239883476,tim=302295369740
    CLOSE #16769312:c=0,e=4,dep=2,type=3,tim=302295369756
    BINDS #18135904:
     Bind#0
      oacdty=02 mxl=22(22) mxlc=00 mal=00 scl=00 pre=00
      oacflg=08 fl2=1000001 frm=00 csi=00 siz=24 off=0
      kxsbbbfp=01145078  bln=22  avl=06  flg=05
      value=4294951147
    WAIT #18135904: nam='db file sequential read' ela= 127 file#=1 block#=609 blocks=1 obj#=67 tim=302295370065
    WAIT #18135904: nam='db file sequential read' ela= 188 file#=1 block#=243448 blocks=1 obj#=67 tim=302295370285
    Dumping Short Stack
    ksedsts()+314<-kcbzib()+17818<-kcbgtcr()+12688<-ktrgtc2()+802<-qeilbk1()+7661<-qeilsr()+185<-qerixtFetch()
    …………
    <-opidrv()+848<-sou2o()+94<-opimai_real()+281<-opimai()+170<-00007FFC2EAC7374<-00007FFC2FADCC91
    kcbzib: dump suspect buffer, err2=8103
    Encrypted block <0, 4437752> content will not be dumped. Dumping header only.
    buffer tsn: 0 rdba: 0x0043b6f8 (1/243448)
    scn: 0x0.0 seq: 0x01 flg: 0x05 tail: 0x00000001
    frmt: 0x02 chkval: 0x11bb type: 0x00=unknown
    Dump of buffer cache at level 8 for pdb=0 tsn=0 rdba=4437752
    BH (0x7ffd55f95998) file#: 1 rdba: 0x0043b6f8 (1/243448) class: 1 ba: 0x7ffd5555e000
      set: 50 pool: 3 bsz: 8192 bsi: 0 sflg: 2 pwc: 0,0
      dbwrid: 1 obj: 67 objn: 67 tsn: [0/0] afn: 1 hint: f
      hash: [0x7ffdaca1f3a0,0x7ffdaca1f3a0] lru: [0x7ffd55f95bc0,0x7ffda9328448]
      ckptq: [NULL] fileq: [NULL]
      objq: [0x7ffd9d61a3c0,0x7ffd9d61a3c0] objaq: [0x7ffd9d61a3b0,0x7ffd9d61a3b0]
      use: [0x7ffdaaf604f8,0x7ffdaaf604f8] wait: [NULL]
      st: READING md: EXCL tch: 0
      flags: only_sequential_access
      Using State Objects
        ----------------------------------------
        SO: 0x00007FFDAAF60470, type: 46, owner: 0x00007FFD9B3C5ED8, flag: INIT/-/-/0x00 if: 0x1 c: 0x1
         proc=0x00007FFDAB2984C0, name=buffer handle, file=kcb2.h LINE:3317, pg=0 conuid=0
        (buffer) (CR) PR: 0x00007FFDAB2984C0 FLG: 0x0 SEQ: 0x439
        class bit: 0x0
        scan scn: 0.0
         cr[0]:
         sh[0]:
        kcbbfbp: [BH: 0x00007FFD55F95998, LINK: 0x00007FFDAAF604F8]
        type: normal pin
        where: qeilwhnp: qeilbk, why: 0
    EXEC #18135904:c=234375,e=235311,p=2,cr=9,cu=0,mis=1,r=0,dep=1,og=4,plh=2015116224,tim=302295604662
    ERROR #18135904:err=8103 tim=302295604678
    STAT #18135904 id=1 cnt=0 pid=0 pos=1 obj=0 op='DELETE  HISTGRM$ (cr=0 pr=0 pw=0 time=2 us)'
    STAT #18135904 id=2 obj=67 op='INDEX RANGE SCAN I_H_OBJ#_COL# (cr=0 pr=0 pw=0 time=0 us cost=3 size=376 card=47)'
    ORA-00604: 递归 SQL 级别 1 出现错误
    ORA-08103: 对象不再存在
    ORA-00604: 递归 SQL 级别 1 出现错误
    ORA-08103: 对象不再存在
    
    *** 2024-07-15 10:53:30.201
    USER (ospid: 39348): terminating the instance due to error 604
    

    因为数据库启动执行的delete from histgrm$操作不是必须的,因此在数据库启动过程中让该sql不执行,实现数据库open成功

    C:\Users\XFF>sqlplus / as sysdba
    
    SQL*Plus: Release 12.1.0.2.0 Production on 星期一 7月 15 11:15:33 2024
    
    Copyright (c) 1982, 2014, Oracle.  All rights reserved.
    
    已连接到空闲例程。
    
    SQL> startup mount pfile='d:/pfile.txt'
    ORACLE 例程已经启动。
    
    Total System Global Area 6442450944 bytes
    Fixed Size                  6205768 bytes
    Variable Size            1493175992 bytes
    Database Buffers         4932501504 bytes
    Redo Buffers               10567680 bytes
    数据库装载完毕。
    SQL> recover database;
    完成介质恢复。
    SQL> alter database open;
    
    数据库已更改。
    

    然后再对histgrm$表对象进行处理,数据库恢复正常

    • 数据库启动ORA-08103故障恢复
    • 数据库启动报ORA-600 6711故障分析处理
    • 数据库打开遭遇ORA-08103故障处理
    • Exception [type: SIGSEGV, Address not mapped to object] [] [ kgegpa()+36]
    • ORA-600 kokasgi1故障恢复
    • truncate IDL_UB1$导致数据库open hang
    • 硬件恢复之后,数据库无法open故障恢复
    • 修改bootstrap$影响数据库执行计划
    • ORACLE 12C CDB中PDB参数管理机制
    • tab$恢复错误汇总
    • 正常关闭数据库sequence cache不为0 sequence不跳跃
    • 记录一次系统回滚段坏块恢复


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