ORA-00600 [18062]主要是Global_name相关的问题
--//启动数据库报错
SQL> startup
ORACLE instance started.
Total System Global Area 242208768 bytes
Fixed Size 2227176 bytes
Variable Size 184550424 bytes
Database Buffers 50331648 bytes
Redo Buffers 5099520 bytes
Database mounted.
ORA-01092: ORACLE instance terminated. Disconnection forced
ORA-00600: internal error code, arguments: [18062], [], [], [], [], [], [], [], [], [], [], []
Process ID: 19824
Session ID: 125 Serial number: 5
--//后台日志
QMNC started with pid=26, OS id=19838
Errors in file /u01/app/diag/rdbms/qxy1/QXY1/trace/QXY1_ora_19824.trc (incident=166416):
ORA-00600: internal error code, arguments: [18062], [], [], [], [], [], [], [], [], [], [], []
Incident details in: /u01/app/diag/rdbms/qxy1/QXY1/incident/incdir_166416/QXY1_ora_19824_i166416.trc
Mon Mar 30 19:11:48 2020
db_recovery_file_dest_size of 4122 MB is 1.71% used. This is a
user-specified limit on the amount of space that will be used by this
database for recovery-related files, and does not reflect the amount of
space available in the underlying filesystem or ASM diskgroup.
ARC3: Archival started
ARC0: STARTING ARCH PROCESSES COMPLETE
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Errors in file /u01/app/diag/rdbms/qxy1/QXY1/trace/QXY1_ora_19824.trc:
ORA-00600: internal error code, arguments: [18062], [], [], [], [], [], [], [], [], [], [], []
Errors in file /u01/app/diag/rdbms/qxy1/QXY1/trace/QXY1_ora_19824.trc:
ORA-00600: internal error code, arguments: [18062], [], [], [], [], [], [], [], [], [], [], []
Error 600 happened during db open, shutting down database
USER (ospid: 19824): terminating the instance due to error 600
Instance terminated by USER, pid = 19824
ORA-1092 signalled during: ALTER DATABASE OPEN...
opiodr aborting process unknown ospid (19824) as a result of ORA-1092
Mon Mar 30 19:11:50 2020
ORA-1092 : opitsk aborting process
--//QXY1_ora_19824.trc
Dump continued from file: /u01/app/diag/rdbms/qxy1/QXY1/trace/QXY1_ora_19824.trc
ORA-00600: internal error code, arguments: [18062], [], [], [], [], [], [], [], [], [], [], []
========= Dump for incident 166416 (ORA 600 [18062]) ========
*** 2020-03-30 19:11:48.366
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
----- Current SQL Statement for this session (sql_id=1h50ks4ncswfn) -----
ALTER DATABASE OPEN
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
-------------------- -------- -------------------- ----------------------------
skdstdst()+36 call kgdsdst() 000000000 ? 000000000 ?
*** 2020-03-30 19:11:48.499
7FFF929B2738 ? 000000001 ?
000000001 ? 000000002 ?
ksedst1()+98 call skdstdst() 000000000 ? 000000000 ?
7FFF929B2738 ? 000000001 ?
000000000 ? 000000002 ?
ksedst()+34 call ksedst1() 000000000 ? 000000001 ?
7FFF929B2738 ? 000000001 ?
000000000 ? 000000002 ?
--//去一个正常的数据库查询global_name所在的行为31。
tab 0, row 31, @0x16ba
tl: 40 fb: --H-FL-- lb: 0x0 cc: 3
col 0: [14] 47 4c 4f 42 41 4c 5f 44 42 5f 4e 41 4d 45
col 1: *NULL*
col 2: [20] 47 6c 6f 62 61 6c 20 64 61 74 61 62 61 73 65 20 6e 61 6d 65
--//bbed
BBED> p *kdbr[31]
rowdata[0]
----------
ub1 rowdata[0] @5910 0x2c
BBED> x /rcnc
rowdata[0] @5910
----------
flag@5910: 0x2c (KDRHFL, KDRHFF, KDRHFH)
lock@5911: 0x02
cols@5912: 3
col 0[14] @5913: GLOBAL_DB_NAME
col 1[0] @5928: *NULL*
col 2[20] @5929: Global database name
BBED> d /v offset 5928
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 5928 to 5939 Dba:0x00400321
-------------------------------------------------------
ff14476c 6f62616c 20646174 l ..Global dat
<16 bytes per line>
BBED>
BBED> f /x 474c4f42
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 5914 to 5925 Dba:0x00400321
------------------------------------------------------------------------
474c4f42 414c5f44 425f4e41 --//GLOBAL_NAME
BBED> d /v count 128
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 5914 to 6041 Dba:0x00400321
-------------------------------------------------------
474c4f42 414c5f44 425f4e41 4d45ff14 l GLOBAL_DB_NAME.. --//后两位ff对应修改之后的NULL
476c6f62 616c2064 61746162 61736520 l Global database
6e616d65 2c000310 4e4c535f 43484152 l name,...NLS_CHAR
41435445 52534554 0c574538 4d535749 l ACTERSET.WE8MSWI
4e313235 320d4368 61726163 74657220 l N1252.Character
7365742c 00030e47 4c4f4241 4c5f4442 l set,...GLOBAL_DB
5f4e414d 45045158 59311447 6c6f6261 l _NAME.QXY1.Globa
6c206461 74616261 7365206e 616d652c l l database name,
<16 bytes per line>
BBED>
BBED> f --//再次find一次GLOBAL_NAME
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 6001 to 6128 Dba:0x00400321
------------------------------------------------------------------------
474c4f42 414c5f44 425f4e41 4d450451 58593114 476c6f62 616c2064 61746162 --//04代表长度 51585931代表global_name真正的值
61736520 6e616d65 2c00030a 44425449 4d455a4f 4e450530 303a3030 0c444220
74696d65 207a6f6e 652c0002 174e4f5f 55534552 49445f56 45524946 4945525f
53414c54 20373532 38324437 45433733 42354334 30414646 33383742 32424635
<32 bytes per line>
BBED>
BBED> f
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 6461 to 6588 Dba:0x00400321
------------------------------------------------------------------------
474c4f42 414c5f44 425f4e41 4d450853 45454444 41544114 476c6f62 616c2064 --//08代表长度 5345454444415441
61746162 61736520 6e616d65 2c000311 4e4c535f 5244424d 535f5645 5253494f
4e0a3131 2e322e30 2e332e30 20524442 4d532076 65727369 6f6e2066 6f72204e
4c532070 6172616d 65746572 732c0003 164e4c53 5f4e4348 41525f43 48415241
<32 bytes per line>
BBED> f
BBED-00212: search string not found
--//真正需要的global_name的值为6015=6001+14
d /v count 12 offset 6015
BBED> d /v count 12 offset 6015
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 6015 to 6026 Dba:0x00400321
-------------------------------------------------------
04515859 3114476c 6f62616c l .QXY1.Global
<16 bytes per line>
BBED>
--//6001-4
BBED> d /v count 12 offset 5997
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 5997 to 6008 Dba:0x00400321
-------------------------------------------------------
2c00030e 474c4f42 414c5f44 l ,...GLOBAL_D
<16 bytes per line>
BBED>
--//5997-92 = 5905
--//92=行目录和数据的偏移量
select to_char('5905','xxxx') from dual;
SQL> select to_char('5905','xxxx') from dual;
TO_CH
-----
1711
BBED> p kdbr[31]
sb2 kdbr[31] @172 5818
BBED>
m /x 1117 offset 172
BBED> p kdbr[31]
sb2 kdbr[31] @172 5818
BBED> m /x 1117 offset 172
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 172 to 183 Dba:0x00400321
------------------------------------------------------------------------
11176018 16189a17 5e173d17
<32 bytes per line>
BBED> p kdbr[31]
sb2 kdbr[31] @172 5905
BBED>
BBED> sum apply
Check value for File 1, Block 801:
current = 0x003a, required = 0x003a
BBED> verify
DBVERIFY - Verification starting
FILE = /u01/app/oradata/QXY1/system01.dbf
BLOCK = 801
Block Checking: DBA = 4195105, Block Type = KTB-managed data block
data header at 0x133465c
kdbchk: xaction header lock count mismatch
trans=2 ilk=1 nlo=0
Block 801 failed with check code 6108
DBVERIFY - Verification complete
Total Blocks Examined : 1
Total Blocks Processed (Data) : 1
Total Blocks Failing (Data) : 1
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 0
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
BBED>
m /x 02 offset 5998
BBED> m /x 02 offset 5998
File: /u01/app/oradata/QXY1/system01.dbf (1)
Block: 801 Offsets: 5998 to 6009 Dba:0x00400321
------------------------------------------------------------------------
02030e47 4c4f4241 4c5f4442
<32 bytes per line>
BBED> sum apply
Check value for File 1, Block 801:
current = 0x0038, required = 0x0038
BBED> verify
DBVERIFY - Verification starting
FILE = /u01/app/oradata/QXY1/system01.dbf
BLOCK = 801
Block Checking: DBA = 4195105, Block Type = KTB-managed data block
data header at 0x133465c
kdbchk: the amount of space used is not equal to block size
used=2058 fsc=4 avsp=6038 dtl=8096
Block 801 failed with check code 6110
DBVERIFY - Verification complete
Total Blocks Examined : 1
Total Blocks Processed (Data) : 1
Total Blocks Failing (Data) : 1
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 0
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
BBED>
BBED> p ktbbh
struct ktbbh, 72 bytes @20
ub1 ktbbhtyp @20 0x01 (KDDBTDATA)
union ktbbhsid, 4 bytes @24
ub4 ktbbhsg1 @24 0x00000062
ub4 ktbbhod1 @24 0x00000062
struct ktbbhcsc, 8 bytes @28
ub4 kscnbas @28 0x000fe9de
ub2 kscnwrp @32 0x0000
sb2 ktbbhict @36 2
ub1 ktbbhflg @38 0x03 (KTBFONFL)
ub1 ktbbhfsl @39 0x00
ub4 ktbbhfnx @40 0x00000000
struct ktbbhitl[0], 24 bytes @44
struct ktbitxid, 8 bytes @44
ub2 kxidusn @44 0x0005
ub2 kxidslt @46 0x0001
ub4 kxidsqn @48 0x0000032e
struct ktbituba, 8 bytes @52
ub4 kubadba @52 0x00c01542
ub2 kubaseq @56 0x00a2
ub1 kubarec @58 0x56
ub2 ktbitflg @60 0x8000 (KTBFCOM)
union _ktbitun, 2 bytes @62
sb2 _ktbitfsc @62 0
ub2 _ktbitwrp @62 0x0000
ub4 ktbitbas @64 0x000fe9dd
struct ktbbhitl[1], 24 bytes @68
struct ktbitxid, 8 bytes @68
ub2 kxidusn @68 0x0004
ub2 kxidslt @70 0x0001
ub4 kxidsqn @72 0x00000299
struct ktbituba, 8 bytes @76
ub4 kubadba @76 0x00c000b4
ub2 kubaseq @80 0x0083
ub1 kubarec @82 0x03
ub2 ktbitflg @84 0x0001 (NONE)
union _ktbitun, 2 bytes @86
sb2 _ktbitfsc @86 4
ub2 _ktbitwrp @86 0x0004
ub4 ktbitbas @88 0x00000000
BBED> assign /d ktbbh.ktbbhitl[1]._ktbitun._ktbitfsc=0
sb2 _ktbitfsc @86 0
BBED> sum apply
Check value for File 1, Block 801:
current = 0x003c, required = 0x003c
BBED> verify
DBVERIFY - Verification starting
FILE = /u01/app/oradata/QXY1/system01.dbf
BLOCK = 801
Block Checking: DBA = 4195105, Block Type = KTB-managed data block
data header at 0x135665c
kdbchk: space available on commit is incorrect
tosp=6042 fsc=0 stb=0 avsp=6038
Block 801 failed with check code 6111
DBVERIFY - Verification complete
Total Blocks Examined : 1
Total Blocks Processed (Data) : 1
Total Blocks Failing (Data) : 1
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 0
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
BBED>
BBED> assign /d kdbhtosp= 6038
sb2 kdbhtosp @104 6038
BBED> sum apply
Check value for File 1, Block 801:
current = 0x0030, required = 0x0030
BBED> verify
DBVERIFY - Verification starting
FILE = /u01/app/oradata/QXY1/system01.dbf
BLOCK = 801
DBVERIFY - Verification complete
Total Blocks Examined : 1
Total Blocks Processed (Data) : 1
Total Blocks Failing (Data) : 0
Total Blocks Processed (Index): 0
Total Blocks Failing (Index): 0
Total Blocks Empty : 0
Total Blocks Marked Corrupt : 0
Total Blocks Influx : 0
Message 531 not found; product=RDBMS; facility=BBED
--//再次启动数据库
SQL> startup
ORACLE instance started.
Total System Global Area 242208768 bytes
Fixed Size 2227176 bytes
Variable Size 184550424 bytes
Database Buffers 50331648 bytes
Redo Buffers 5099520 bytes
Database mounted.
Database opened.
SQL>
MOS上面有简单的处理方法Cannot Restart Oracle After Setting Global Name to NULL (Doc ID 743676.1)