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

    ORA-600 2131故障处理

    惜分飞发表于 2024-05-19 04:34:05
    love 0

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

    标题:ORA-600 2131故障处理

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

    数据库启动报ORA-600 2131错误,查看alert日志发现是在mount过程报错

    Fri May 17 20:58:28 2024
    Starting ORACLE instance (normal)
    LICENSE_MAX_SESSION = 0
    LICENSE_SESSIONS_WARNING = 0
    Initial number of CPU is 16
    Number of processor cores in the system is 8
    Number of processor sockets in the system is 1
    Picked latch-free SCN scheme 3
    Autotune of undo retention is turned on. 
    IMODE=BR
    ILAT =249
    LICENSE_MAX_USERS = 0
    SYS auditing is disabled
    Starting up:
    Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options.
    Windows NT Version V6.2  
    CPU                 : 16 - type 8664, 8 Physical Cores
    Process Affinity    : 0x0x0000000000000000
    Memory (Avail/Total): Ph:93799M/97925M, Ph+PgF:78891M/112261M 
    Using parameter settings in server-side spfile E:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\DATABASE\SPFILEXFF.ORA
    System parameters with non-default values:
      processes                = 1500
      sessions                 = 2272
      nls_language             = "SIMPLIFIED CHINESE"
      nls_territory            = "CHINA"
      sga_target               = 29440M
      control_files            = "E:\ORADATA\xff\CONTROL01.CTL"
      db_block_size            = 8192
      compatible               = "11.2.0.4.0"
      log_archive_dest_1       = "LOCATION=e:\app\archivelog\"
      log_archive_format       = "ARC%S_%R.%T"
      undo_tablespace          = "UNDOTBS2"
      sec_case_sensitive_logon = FALSE
      remote_login_passwordfile= "EXCLUSIVE"
      db_domain                = ""
      dispatchers              = "(PROTOCOL=TCP) (SERVICE=xffXDB)"
      audit_file_dest          = "E:\APP\ADMINISTRATOR\ADMIN\xff\ADUMP"
      audit_trail              = "NONE"
      db_name                  = "xff"
      open_cursors             = 300
      pga_aggregate_target     = 9792M
      diagnostic_dest          = "E:\APP\ADMINISTRATOR"
    Fri May 17 20:58:29 2024
    PMON started with pid=2, OS id=6696 
    Fri May 17 20:58:29 2024
    PSP0 started with pid=3, OS id=2424 
    Fri May 17 20:58:30 2024
    VKTM started with pid=4, OS id=5472 at elevated priority
    VKTM running at (10)millisec precision with DBRM quantum (100)ms
    Fri May 17 20:58:30 2024
    GEN0 started with pid=5, OS id=5764 
    Fri May 17 20:58:30 2024
    DIAG started with pid=6, OS id=372 
    Fri May 17 20:58:30 2024
    DBRM started with pid=7, OS id=2992 
    Fri May 17 20:58:30 2024
    DIA0 started with pid=8, OS id=4960 
    Fri May 17 20:58:30 2024
    MMAN started with pid=9, OS id=6036 
    Fri May 17 20:58:30 2024
    DBW0 started with pid=10, OS id=4724 
    Fri May 17 20:58:30 2024
    DBW1 started with pid=11, OS id=2652 
    Fri May 17 20:58:30 2024
    LGWR started with pid=12, OS id=5320 
    Fri May 17 20:58:30 2024
    CKPT started with pid=13, OS id=5732 
    Fri May 17 20:58:30 2024
    SMON started with pid=14, OS id=936 
    Fri May 17 20:58:30 2024
    RECO started with pid=15, OS id=2192 
    Fri May 17 20:58:30 2024
    MMON started with pid=16, OS id=5576 
    Fri May 17 20:58:30 2024
    MMNL started with pid=17, OS id=5748 
    starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
    starting up 1 shared server(s) ...
    ORACLE_BASE from environment = E:\app\Administrator
    Fri May 17 20:58:31 2024
    ALTER DATABASE   MOUNT
    Errors in file E:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_ora_5452.trc  (incident=403399):
    ORA-00600: ??????, ??: [2131], [9], [8], [], [], [], [], [], [], [], [], []
    Incident details in: E:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\incident\incdir_403399\xff_ora_5452_i403399.trc
    Use ADRCI or Support Workbench to package the incident.
    See Note 411.1 at My Oracle Support for error and packaging details.
    ORA-600 signalled during: ALTER DATABASE   MOUNT...
    

    这个错误是由于controlfile损坏导致,有这个库以前部署过rman备份,解决起来比较简单,使用rman还原控制文件,并尝试recover

    RMAN> restore controlfile from 'E:\rmanback\rmanfile\CTL_20240517_A62R067K_1_1.RMAN';
    
    启动 restore 于 17-5月 -24
    使用通道 ORA_DISK_1
    
    通道 ORA_DISK_1: 正在还原控制文件
    通道 ORA_DISK_1: 还原完成, 用时: 00:00:01
    输出文件名=E:\ORADATA\XFF\CONTROL01.CTL
    完成 restore 于 17-5月 -24
    
    RMAN>
    
    RMAN>
    
    RMAN> alter database mount;
    
    数据库已装载
    释放的通道: ORA_DISK_1
    
    RMAN> recover database;
    
    启动 recover 于 17-5月 -24
    分配的通道: ORA_DISK_1
    通道 ORA_DISK_1: SID=996 设备类型=DISK
    
    正在开始介质的恢复
    
    线程 1 序列 4100 的归档日志已作为文件 E:\ORADATA\XFF\REDO02.LOG 存在于磁盘上
    线程 1 序列 4101 的归档日志已作为文件 E:\ORADATA\XFF\REDO03.LOG 存在于磁盘上
    线程 1 序列 4102 的归档日志已作为文件 E:\ORADATA\XFF\REDO01.LOG 存在于磁盘上
    归档日志文件名=E:\APP\ARCHIVELOG\ARC0000004025_1165094245.0001 线程=1 序列=4025
    归档日志文件名=E:\APP\ARCHIVELOG\ARC0000004026_1165094245.0001 线程=1 序列=4026
    …………
    归档日志文件名=E:\APP\ARCHIVELOG\ARC0000004099_1165094245.0001 线程=1 序列=4099
    归档日志文件名=E:\ORADATA\XFF\REDO02.LOG 线程=1 序列=4100
    归档日志文件名=E:\ORADATA\XFF\REDO03.LOG 线程=1 序列=4101
    归档日志文件名=E:\ORADATA\XFF\REDO01.LOG 线程=1 序列=4102
    介质恢复完成, 用时: 00:00:22
    完成 recover 于 17-5月 -24
    
    RMAN> exit
    
    
    恢复管理器完成。
    
    E:\oradata\XFF>
    

    这种恢复情况下,如果现在要打开库,需要resetlogs方式,考虑通过创建ctl直接打开(不想用resetlogs)

    SQL> shutdown immediate;
    ORA-01109: 数据库未打开
    
    
    已经卸载数据库。
    ORACLE 例程已经关闭。
    SQL> startup nomount;
    ORACLE 例程已经启动。
    
    Total System Global Area 3.0732E+10 bytes
    Fixed Size                  2296264 bytes
    Variable Size            3825206840 bytes
    Database Buffers         2.6844E+10 bytes
    Redo Buffers               61206528 bytes
    SQL> CREATE CONTROLFILE REUSE DATABASE "XFF" NORESETLOGS  ARCHIVELOG
      2      MAXLOGFILES 16
      3      MAXLOGMEMBERS 3
      4      MAXDATAFILES 100
      5      MAXINSTANCES 8
      6      MAXLOGHISTORY 876
      7  LOGFILE
      8    GROUP 1 'E:\ORADATA\XFF\REDO01.LOG'  SIZE 50M BLOCKSIZE 512,
      9    GROUP 2 'E:\ORADATA\XFF\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,
     10    GROUP 3 'E:\ORADATA\XFF\REDO03.LOG'  SIZE 50M BLOCKSIZE 512
     11  -- STANDBY LOGFILE
     12  DATAFILE
     13    'E:\ORADATA\XFF\SYSTEM01.DBF',
     14    'E:\ORADATA\XFF\SYSAUX01.DBF',
     15    'E:\ORADATA\XFF\USERS01.DBF',
     16    'E:\ORADATA\XFF\XFF_DATA01.DBF',
     17    'E:\ORADATA\XFF\XFF_INDEX01.DBF',
     18    'E:\ORADATA\XFF\UNDOTBS2.DBF'
     19  CHARACTER SET ZHS16GBK
     20  ;
    
    控制文件已创建。
    
    SQL> recover database;
    完成介质恢复。
    SQL> alter database open;
    
    数据库已更改。
    
    SQL> ALTER TABLESPACE TEMP ADD TEMPFILE 'E:\ORADATA\XFF\TEMP01.DBF' REUSE;
    
    表空间已更改。
    
    

    至此本次恢复晚上,由于arch,redo和数据文件没有损坏,恢复非常完美,参考以前类似说明:ORA-600 2131故障说明

    • drop database操作
    • rman恢复spfile最快捷方式
    • ORA-27103 when Memory target parameter is set to more than 3 GB(11.1.0.7)
    • 创建控制文件出现ORA-01565 ORA-27041 OSD-04002
    • ksuapc : ORA-1033 foreground process starts before PMON
    • ORA-01207/ORA-00338恢复
    • 主机断电系统回到N年前数据库报ORA-600 kcm_headroom_warn_1错误
    • ORA-19693: backup piece %s already included
    • 普通库迁移至ASM存储
    • 非归档异常数据库rman备份
    • 恢复没有控制文件备份的rman数据文件备份
    • Oracle 23ai rm redo*.log恢复


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