ORA-00600: internal error code, arguments: [2131], [9], [8]

lhrbest發表於2020-07-01



在mount資料庫時,報錯:ORA-00600: internal error code, arguments: [2131], [9], [8], [], [], [], [], [], [], [], [], []

SYS@lhr19cdb> startup ;
ORACLE instance started.
Total System Global Area 1073739168 bytes
Fixed Size                  9143712 bytes
Variable Size             549453824 bytes
Database Buffers          507510784 bytes
Redo Buffers                7630848 bytes
ORA-00600: internal error code, arguments: [2131], [9], [8], [], [], [], [], [], [], [], [], []

查詢告警日誌:

rrors in file /u01/app/oracle/diag/rdbms/lhr19cdb/lhr19cdb/trace/lhr19cdb_ora_4642.trc  (incident=102744) (PDBNAME=CDB$ROOT):
ORA-00600: internal error code, arguments: [2131], [9], [8], [], [], [], [], [], [], [], [], []
Incident details in: /u01/app/oracle/diag/rdbms/lhr19cdb/lhr19cdb/incident/incdir_102744/lhr19cdb_ora_4642_i102744.trc
2020-06-30T18:19:37.142827+08:00
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...
2020-06-30T18:19:37.711653+08:00
Dumping diagnostic data in directory=[cdmp_20200630181937], requested by (instance=1, osid=4642), summary=[incident=102744].


trace檔案:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
Build label:    RDBMS_19.3.0.0.0DBRU_LINUX.X64_190417
ORACLE_HOME:    /u01/app/oracle/product/19.3.0/dbhome_1
System name:    Linux
Node name:      lhr2019ocpasm
Release:        3.10.0-1127.10.1.el7.x86_64
Version:        #1 SMP Wed Jun 3 14:28:03 UTC 2020
Machine:        x86_64
Instance name: lhr19cdb
Redo thread mounted by this instance: 0 <none>
Oracle process number: 40
Unix process pid: 4642, image: oracle@lhr2019ocpasm (TNS V1-V3)
*** 2020-06-30T18:18:24.766608+08:00 (CDB$ROOT(1))
*** SESSION ID:(5.16723) 2020-06-30T18:18:24.766713+08:00
*** CLIENT ID:() 2020-06-30T18:18:24.766737+08:00
*** SERVICE NAME:() 2020-06-30T18:18:24.766753+08:00
*** MODULE NAME:(sqlplus@lhr2019ocpasm (TNS V1-V3)) 2020-06-30T18:18:24.766768+08:00
*** ACTION NAME:() 2020-06-30T18:18:24.766785+08:00
*** CLIENT DRIVER:(SQL*PLUS) 2020-06-30T18:18:24.766800+08:00
*** CONTAINER ID:(1) 2020-06-30T18:18:24.766816+08:00
 
Error: kccpb_sanity_check_2
Control file sequence number mismatch!
fhcsq: 7428 bhcsq: 8445 cfn 0 rpbn 16
----- Call Stack Trace -----
calling              call     entry                argument values in hex      
location             type     point                (? means dubious value)     
-------------------- -------- -------------------- ----------------------------


可以找到“Control file sequence number mismatch!”,說明是控制檔案出了問題。


透過mos也可以查到: ALTER DATABASE MOUNT = ORA-600[2131] Errors In The Alert Log (Doc ID 2183374.1)

解決方案也是重建控制檔案。


第1步,先使用一個控制檔案覆蓋另一個控制檔案,修改引數檔案

SYS@lhr19cdb> show parameter control


NAME                                 TYPE                   VALUE

------------------------------------ ---------------------- ------------------------------

control_file_record_keep_time        integer                7

control_files                        string                 +DATA/LHR19CDB/CONTROLFILE/cur

                                                            rent.261.1043926887, +FRA/LHR1

                                                            9CDB/CONTROLFILE/current.256.1

                                                            043926887

control_management_pack_access       string                 DIAGNOSTIC+TUNING


ASMCMD> cp +FRA/LHR19CDB/CONTROLFILE/Current.256.1043926887 +DATA/LHR19CDB/CONTROLFILE/control01.ctl

copying +FRA/LHR19CDB/CONTROLFILE/Current.256.1043926887 -> +DATA/LHR19CDB/CONTROLFILE/control01.ctl


再次重啟,發現報錯不一樣了。

SYS@lhr19cdb> startup force pfile='?/dbs/initlhr19cdb.ora';

ORACLE instance started.


Total System Global Area 1073739168 bytes

Fixed Size                  9143712 bytes

Variable Size             549453824 bytes

Database Buffers          507510784 bytes

Redo Buffers                7630848 bytes

Database mounted.

ORA-01122: database file 3 failed verification check

ORA-01110: data file 3: '+DATA/LHR19CDB/DATAFILE/sysaux.258.1043926783'

ORA-01207: file is more recent than control file - old control file


對於這種情況還是得重建控制檔案:

SYS@lhr19cdb> alter database backup controlfile to trace as '/home/oracle/ctl.sql';
Database altered.
SYS@lhr19cdb> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
[oracle@lhr2019ocpasm dbs]$ more /home/oracle/ctl.sql
-- The following are current System-scope REDO Log Archival related
-- parameters and can be included in the database initialization file.
--
-- LOG_ARCHIVE_DEST=''
-- LOG_ARCHIVE_DUPLEX_DEST=''
--
-- LOG_ARCHIVE_FORMAT=%t_%s_%r.dbf
--
-- DB_UNIQUE_NAME="lhr19cdb"
--
-- LOG_ARCHIVE_CONFIG='SEND, RECEIVE, NODG_CONFIG'
-- LOG_ARCHIVE_MAX_PROCESSES=4
-- STANDBY_FILE_MANAGEMENT=MANUAL
-- FAL_CLIENT=''
-- FAL_SERVER=''
--
-- LOG_ARCHIVE_DEST_1='LOCATION=USE_DB_RECOVERY_FILE_DEST'
-- LOG_ARCHIVE_DEST_1='MANDATORY REOPEN=300 NODELAY'
-- LOG_ARCHIVE_DEST_1='ARCH NOAFFIRM NOVERIFY SYNC'
-- LOG_ARCHIVE_DEST_1='NOREGISTER'
-- LOG_ARCHIVE_DEST_1='NOALTERNATE'
-- LOG_ARCHIVE_DEST_1='NODEPENDENCY'
-- LOG_ARCHIVE_DEST_1='NOMAX_FAILURE NOQUOTA_SIZE NOQUOTA_USED NODB_UNIQUE_NAME'
-- LOG_ARCHIVE_DEST_1='VALID_FOR=(PRIMARY_ROLE,ONLINE_LOGFILES)'
-- LOG_ARCHIVE_DEST_STATE_1=ENABLE
--
-- Below are two sets of SQL statements, each of which creates a new
-- control file and uses it to open the database. The first set opens
-- the database with the NORESETLOGS option and should be used only if
-- the current versions of all online logs are available. The second
-- set opens the database with the RESETLOGS option and should be used
-- if online logs are unavailable.
-- The appropriate set of statements can be copied from the trace into
-- a script file, edited as necessary, and executed when there is a
-- need to re-create the control file.
--
--     Set #1. NORESETLOGS case
--
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- Additional logs may be required for media recovery of offline
-- Use this only if the current versions of all online logs are
-- available.
-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
--  ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "LHR19CDB" NORESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 1024
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 (
    '+DATA/LHR19CDB/ONLINELOG/group_1.262.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_1.257.1043927287'
  ) SIZE 200M BLOCKSIZE 512,
  GROUP 2 (
    '+DATA/LHR19CDB/ONLINELOG/group_2.263.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_2.258.1043927287'
  ) SIZE 200M BLOCKSIZE 512,
  GROUP 3 (
    '+DATA/LHR19CDB/ONLINELOG/group_3.264.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_3.259.1043927287'
  ) SIZE 200M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '+DATA/LHR19CDB/DATAFILE/system.257.1043926727',
  '+DATA/LHR19CDB/DATAFILE/sysaux.258.1043926783',
  '+DATA/LHR19CDB/DATAFILE/undotbs1.259.1043926819',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.266.1043929289',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.267.1043929289',
  '+DATA/LHR19CDB/DATAFILE/users.260.1043926821',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.268.1043929289'
CHARACTER SET AL32UTF8
;
-- Commands to re-create incarnation table
-- Below log names MUST be changed to existing filenames on
-- disk. Any one log file from each branch can be used to
-- re-create incarnation records.
-- ALTER DATABASE REGISTER LOGFILE '+FRA';
-- ALTER DATABASE REGISTER LOGFILE '+FRA';
-- Recovery is required if any of the datafiles are restored backups,
-- or if the last shutdown was not normal or immediate.
RECOVER DATABASE
-- Database can now be opened normally.
ALTER DATABASE OPEN;
-- Open all the PDBs.
ALTER PLUGGABLE DATABASE ALL OPEN;
-- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
ALTER TABLESPACE TEMP ADD TEMPFILE '+DATA/LHR19CDB/TEMPFILE/temp.265.1043928221' REUSE;
ALTER SESSION SET CONTAINER = "PDB$SEED";
ALTER TABLESPACE TEMP ADD TEMPFILE '+DATA/LHR19CDB/A8CDD130A11916D7E0530E0011AC5827/TEMPFILE/temp.269.1043929321' REUSE;
ALTER SESSION SET CONTAINER = "CDB$ROOT";
-- End of tempfile additions.
--
--     Set #2. RESETLOGS case
--
-- The following commands will create a new control file and use it
-- to open the database.
-- Data used by Recovery Manager will be lost.
-- The contents of online logs will be lost and all backups will
-- be invalidated. Use this only if online logs are damaged.
-- After mounting the created controlfile, the following SQL
-- statement will place the database in the appropriate
-- protection mode:
--  ALTER DATABASE SET STANDBY DATABASE TO MAXIMIZE PERFORMANCE
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "LHR19CDB" RESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 1024
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 (
    '+DATA/LHR19CDB/ONLINELOG/group_1.262.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_1.257.1043927287'
  ) SIZE 200M BLOCKSIZE 512,
  GROUP 2 (
    '+DATA/LHR19CDB/ONLINELOG/group_2.263.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_2.258.1043927287'
  ) SIZE 200M BLOCKSIZE 512,
  GROUP 3 (
    '+DATA/LHR19CDB/ONLINELOG/group_3.264.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_3.259.1043927287'
  ) SIZE 200M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '+DATA/LHR19CDB/DATAFILE/system.257.1043926727',
  '+DATA/LHR19CDB/DATAFILE/sysaux.258.1043926783',
  '+DATA/LHR19CDB/DATAFILE/undotbs1.259.1043926819',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.266.1043929289',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.267.1043929289',
  '+DATA/LHR19CDB/DATAFILE/users.260.1043926821',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.268.1043929289'
CHARACTER SET AL32UTF8
;
-- Commands to re-create incarnation table
-- Below log names MUST be changed to existing filenames on
-- disk. Any one log file from each branch can be used to
-- re-create incarnation records.
-- ALTER DATABASE REGISTER LOGFILE '+FRA';
-- ALTER DATABASE REGISTER LOGFILE '+FRA';
-- Recovery is required if any of the datafiles are restored backups,
-- or if the last shutdown was not normal or immediate.
RECOVER DATABASE USING BACKUP CONTROLFILE
-- Database can now be opened zeroing the online logs.
ALTER DATABASE OPEN RESETLOGS;
-- Open all the PDBs.
ALTER PLUGGABLE DATABASE ALL OPEN;
-- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
ALTER TABLESPACE TEMP ADD TEMPFILE '+DATA/LHR19CDB/TEMPFILE/temp.265.1043928221' REUSE;
ALTER SESSION SET CONTAINER = "PDB$SEED";
ALTER TABLESPACE TEMP ADD TEMPFILE '+DATA/LHR19CDB/A8CDD130A11916D7E0530E0011AC5827/TEMPFILE/temp.269.1043929321' REUSE;
ALTER SESSION SET CONTAINER = "CDB$ROOT";
-- End of tempfile additions.


依次執行即可:

STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "LHR19CDB" RESETLOGS  NOARCHIVELOG
    MAXLOGFILES 16
    MAXLOGMEMBERS 3
    MAXDATAFILES 1024
    MAXINSTANCES 8
    MAXLOGHISTORY 292
LOGFILE
  GROUP 1 (
    '+DATA/LHR19CDB/ONLINELOG/group_1.262.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_1.257.1043927287'
  ) SIZE 200M BLOCKSIZE 512,
  GROUP 2 (
    '+DATA/LHR19CDB/ONLINELOG/group_2.263.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_2.258.1043927287'
  ) SIZE 200M BLOCKSIZE 512,
  GROUP 3 (
    '+DATA/LHR19CDB/ONLINELOG/group_3.264.1043926891',
    '+FRA/LHR19CDB/ONLINELOG/group_3.259.1043927287'
  ) SIZE 200M BLOCKSIZE 512
-- STANDBY LOGFILE
DATAFILE
  '+DATA/LHR19CDB/DATAFILE/system.257.1043926727',
  '+DATA/LHR19CDB/DATAFILE/sysaux.258.1043926783',
  '+DATA/LHR19CDB/DATAFILE/undotbs1.259.1043926819',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.266.1043929289',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.267.1043929289',
  '+DATA/LHR19CDB/DATAFILE/users.260.1043926821',
  '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.268.1043929289'
CHARACTER SET AL32UTF8
;
-- Commands to re-create incarnation table
-- Below log names MUST be changed to existing filenames on
-- disk. Any one log file from each branch can be used to
-- re-create incarnation records.
-- ALTER DATABASE REGISTER LOGFILE '+FRA';
-- ALTER DATABASE REGISTER LOGFILE '+FRA';
-- Recovery is required if any of the datafiles are restored backups,
-- or if the last shutdown was not normal or immediate.
RECOVER DATABASE USING BACKUP CONTROLFILE
-- Database can now be opened zeroing the online logs.
ALTER DATABASE OPEN RESETLOGS;
-- Open all the PDBs.
ALTER PLUGGABLE DATABASE ALL OPEN;
-- Commands to add tempfiles to temporary tablespaces.
-- Online tempfiles have complete space information.
-- Other tempfiles may require adjustment.
ALTER TABLESPACE TEMP ADD TEMPFILE '+DATA/LHR19CDB/TEMPFILE/temp.265.1043928221' REUSE;
ALTER SESSION SET CONTAINER = "PDB$SEED";
ALTER TABLESPACE TEMP ADD TEMPFILE '+DATA/LHR19CDB/A8CDD130A11916D7E0530E0011AC5827/TEMPFILE/temp.269.1043929321' REUSE;
ALTER SESSION SET CONTAINER = "CDB$ROOT";


執行過程:

SYS@lhr19cdb> CREATE CONTROLFILE REUSE DATABASE "LHR19CDB" RESETLOGS  NOARCHIVELOG
  2      MAXLOGFILES 16
  3      MAXLOGMEMBERS 3
  4      MAXDATAFILES 1024
  5      MAXINSTANCES 8
  6      MAXLOGHISTORY 292
  7  LOGFILE
  8    GROUP 1 (
  9      '+DATA/LHR19CDB/ONLINELOG/group_1.262.1043926891',
 10      '+FRA/LHR19CDB/ONLINELOG/group_1.257.1043927287'
 11    ) SIZE 200M BLOCKSIZE 512,
 12    GROUP 2 (
 13      '+DATA/LHR19CDB/ONLINELOG/group_2.263.1043926891',
 14      '+FRA/LHR19CDB/ONLINELOG/group_2.258.1043927287'
 15    ) SIZE 200M BLOCKSIZE 512,
 16    GROUP 3 (
 17      '+DATA/LHR19CDB/ONLINELOG/group_3.264.1043926891',
 18      '+FRA/LHR19CDB/ONLINELOG/group_3.259.1043927287'
  ) SIZE 200M BLOCKSIZE 512
 20  -- STANDBY LOGFILE
 21  DATAFILE
 22    '+DATA/LHR19CDB/DATAFILE/system.257.1043926727',
  '+DATA/LHR19CDB/DATAFILE/sysaux.258.1043926783',
 24    '+DATA/LHR19CDB/DATAFILE/undotbs1.259.1043926819',
 25    '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.266.1043929289',
 26    '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.267.1043929289',
 27    '+DATA/LHR19CDB/DATAFILE/users.260.1043926821',
 28    '+DATA/LHR19CDB/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.268.1043929289'
 29  CHARACTER SET AL32UTF8
 30  ;
Control file created.
SYS@lhr19cdb> RECOVER DATABASE USING BACKUP CONTROLFILE;
ORA-00279: change 3351996 generated at 06/28/2020 16:33:15 needed for thread 1
ORA-00289: suggestion : +FRA
ORA-00280: change 3351996 for thread 1 is in sequence #19
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
+FRA/LHR19CDB/ONLINELOG/group_1.257.1043927287
Log applied.
Media recovery complete.
SYS@lhr19cdb> ALTER DATABASE OPEN RESETLOGS;






ALTER DATABASE MOUNT = ORA-600[2131] Errors In The Alert Log (Doc ID 2183374.1)

In this Document

Symptoms
Changes
Cause
Solution
References


APPLIES TO:

Oracle Database - Enterprise Edition - Version 11.2.0.4 and later
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Oracle Database Cloud Exadata Service - Version N/A and later
Information in this document applies to any platform.

SYMPTOMS

The following error occurred in the alert log:

ORA-00600: internal error code, arguments: [2131], [33], [32], [], [], [], [], [], [], [], [], []


The alert log and associated incident trace file shows that this error occurred as a result of this SQL statement:

     ALTER DATABASE MOUNT

 

The Call Stack Trace in the associated incident trace file shows:

skdstdst <- ksedst1 <- ksedst <- dbkedDefDump <- ksedmp
 <- ksfdmp <- dbgexPhaseII <- dbgexProcessError <- dbgeExecuteForError <- dbgePostErrorKGE <- dbkePostKGE_kgsf
  <- kgeade <- kgeriv_int <- kgeriv <- kgesiv <- ksesic2 <- kccgcp
   <- kctdcpr <- kccdmp1 <- kccpb_sanity_check <- kccbmp_get <- kccsed_rbl <- kccocx
    <- kccocf <- kcfcmb <- kcfmdb <- adbdrv <- opiexe <- opiosq0
     <- kpooprx <- kpoal8 <- opiodr <- ttcpip <- opitsk <- opiino
      <- opiodr <- opidrv <- sou2o <- opimai_real <- ssthrdmain <- main

CHANGES

 

CAUSE

This issue is caused by controlfile corruption.
 
The ORA-600[2131] errors occur when mounting the database.  This is when the instance locates and opens the control file.
 

SOLUTION

1.  Restore from backup.

- Or-

2.  Recreate the controlfile.

     References:
          How to Recreate the Controlfile -  Document 1012929.6
          How to Recreate a Controlfile -  Document 735106.1




Database Can Not Startup With Error "Control file sequence number mismatch!" (Doc ID 2411155.1)


In this Document

Symptoms
Cause
Solution
References


APPLIES TO:

Oracle Database - Enterprise Edition - Version 11.2.0.3 and later
Oracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Cloud Infrastructure - Database Service - Version N/A and later
Information in this document applies to any platform.

SYMPTOMS

1. Instance startup failed at OPEN phase, but no obvious errors in alert log:

 

Thu May 31 15:23:20 2018
Starting ORACLE instance (normal)
****************** Large Pages Information *****************

......
......

Thu May 31 15:23:37 2018
ARC3 started with pid=41, OS id=15059
ARC1: Archival started
ARC2: Archival started
ARC1: Becoming the 'no FAL' ARCH
ARC1: Becoming the 'no SRL' ARCH
System state dump requested by (instance=1, osid=15002), summary=[abnormal instance termination].
System State dumped to trace file /<path>/trace/<sid>_diag_14925.trc
USER (ospid: 15002): terminating the instance <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 15002 terminate the instance...
Dumping diagnostic data in directory=[cdmp_20180531152337], requested by (instance=1,  osid=15002), summary=[abnormal instance termination].
Instance terminated by USER, pid = 15002

 

2. Find the related trace file and find following error in the trace file:

 

Error: kccpb_sanity_check_2
Control file sequence number mismatch! <<<<<<<<< Control file sequence number mismatch!
fhcsq: 25038565 bhcsq: 3481437667 cfn 8
kjzduptcctx: Notifying DIAG for crash event
----- Abridged Call Stack Trace -----
ksedsts()+461<-kjzdssdmp()+267<-kjzduptcctx()+232<-kjzdicrshnfy()+53<-ksuitm()+1332<-kccpb_sanity_check()+341<-kccrec_rbl()+433<-kccext_ugg()+294<-kccrec_read_write()+356<-kccrrc()+456<-krse_arc_source_init()+548<-krse_arc_driver_core()+797<-krse_arc_driver()+338
<-krsq_arch_to_force_switch()+189<-kcttsc()+352<-kcfopd()+1560<-adbdrv()+51834<-opiexe()+18384<-opiosq0()+3870<-kpooprx()+274
----- End of Abridged Call Stack Trace -----

*** 2018-05-31 15:23:37.560
USER (ospid: 15002): terminating the instance  <<<<<<<<<<<<<<<  Instance was terminated by  ospid:15002
ksuitm: waiting up to [5] seconds before killing DIAG(14925) 

 

CAUSE

This could be due to controlfile "corruption".
 

SOLUTION


Option 1 :-

 

 

Database cannot be mounted due to this error .

If controlfile is multiplexed try starting the database with just one controlfile at a time (Modify control_files parameter )and check if database opens.

Example

If control_files=/<path1>/control01.ctl,/<path2>/control02.ctl

First try with control_files=/<path1>/control01.ctl . Check if database . If no change control_files=/<path2>/control02.ctl  and try.

If it fails explore Option 2 or Option 3

Option 2

 

Since database will not mount due to the controlfile corruption , you would have to Manually recreate the controlfile.

Rename the existing controlfile at OS level using mv command

SQL>Shutdown abort;

$ mv <controlfile orignal name>  <controlfile Orignal name_corrupt>

 

Then prepare the script to recreate the controlfile.


How to Recreate a Controlfile  Document 735106.1


Ensure you have included all the datafiles and the redo logfiles.

Please note recreating the controlfile your backup information will get removed ,Once database is opened you can catalog your backup information (if you are aware of the location of backup on disk)

On disk

Rman> Catalog start with '<location of backup>' ;


On tape

Customer RecommendedHOW TO CATALOG TAPE BACKUP PIECES  Document 550082.1


Option 3


If you have a backup of the controlfile you can restore just the controlfile from the backup and do a recovery


You can review your previous rman logs to check which backuppiece contains the controlfile.


Rman> restore controlfile from '<name and path of backuppiece>' ;


Rman >recover database ;
 





About Me

........................................................................................................................

● 本文作者:小麥苗,部分內容整理自網路,若有侵權請聯絡小麥苗刪除

● 本文在個人微 信公眾號( DB寶)上有同步更新

● QQ群號: 230161599 、618766405,微信群私聊

● 個人QQ號(646634621),微 訊號(db_bao),註明新增緣由

● 於 2020年7月 在西安完成

● 最新修改時間:2020年7月

● 版權所有,歡迎分享本文,轉載請保留出處

........................................................................................................................

小麥苗的微店

● 小麥苗出版的資料庫類叢書: http://blog.itpub.net/26736162/viewspace-2142121/

小麥苗OCP、OCM、高可用、DBA學習班http://blog.itpub.net/26736162/viewspace-2148098/

● 資料庫筆試面試題庫及解答: http://blog.itpub.net/26736162/viewspace-2134706/

........................................................................................................................

請掃描下面的二維碼來關注小麥苗的微 信公眾號( DB寶)及QQ群(230161599、618766405)、新增小麥苗微 信(db_bao), 學習最實用的資料庫技術。

........................................................................................................................

 

 



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26736162/viewspace-2701509/,如需轉載,請註明出處,否則將追究法律責任。

相關文章