在刪除使用者時報ORA-00600: 內部錯誤程式碼, 引數: [13011]..

eric0435發表於2013-08-10
在刪除使用者時報ORA-00600: 內部錯誤程式碼, 引數: [13011], [420], [4293646], [57], [4293653], [0], [], [], [], [], [],  []
Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
Connected as system

SQL> drop user gzyb cascade;

ORA-00600: 內部錯誤程式碼, 引數: [13011], [420], [4293646], [57], [4293653], [0], [], [], [], [], [], []

檢查跟蹤檔案/orac/diag/rdbms/dbservice/dbservice/incident/incdir_47163/dbservice_ora_13533_i47163.trc
Dump file /orac/diag/rdbms/dbservice/dbservice/incident/incdir_47163/dbservice_ora_13533_i47163.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /orac/orahome/11.2.0/db_1
System name:    Linux
Node name:      gzybtest
Release:        2.6.32-279.el6.x86_64
Version:        #1 SMP Wed Jun 13 18:24:36 EDT 2012
Machine:        x86_64
Instance name: dbservice
Redo thread mounted by this instance: 1
Oracle process number: 26
Unix process pid: 13533, image: oracle@gzybtest


*** 2013-08-10 13:15:13.697
*** SESSION ID:(68.2534) 2013-08-10 13:15:13.697
*** CLIENT ID:() 2013-08-10 13:15:13.697
*** SERVICE NAME:(dbservice) 2013-08-10 13:15:13.697
*** MODULE NAME:(PL/SQL Developer) 2013-08-10 13:15:13.697
*** ACTION NAME:(Main session) 2013-08-10 13:15:13.697

Dump continued from file: /orac/diag/rdbms/dbservice/dbservice/trace/dbservice_ora_13533.trc
ORA-00600: 內部錯誤程式碼, 引數: [13011], [420], [4293646], [57], [4293653], [0], [], [], [], [], [], []

========= Dump for incident 47163 (ORA 600 [13011]) ========

*** 2013-08-10 13:15:13.697
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
----- Current SQL Statement for this session (sql_id=2mp99nzd9u1qp) -----
delete from histgrm$ where obj# = :1

----- Call Stack Trace -----
calling              call     entry                argument values in hex
location             type     point                (? means dubious value)
-------------------- -------- -------------------- ----------------------------
skdstdst()+36        call     kgdsdst()            000000000 ? 000000000 ?
                                                   7FFFEC2A8D08 ? 000000001 ?
                                                   7FFFEC2AD208 ? 000000000 ?
發現是在執行delete from histgrm$ where obj# = :1語句時報錯

對於13013錯誤而言,隨後的6個引數含義如下:
Arg [a] Passcount
Arg [b] Data Object number
Arg [c] Tablespace Relative DBA of block containing the row to be updated
Arg [d] Row Slot number
Arg [e] Relative DBA of block being updated (should be same as [c])

查詢object_id=420是什麼物件發現是C_OBJ#_INTCOL#
SQL> Select object_name,object_type,owner from dba_objects where data_object_id=420;

OBJECT_NAME                                                                      OBJECT_TYPE         OWNER
-------------------------------------------------------------------------------- ------------------- ----------- -------------------
HISTGRM$                                                                         TABLE               SYS
C_OBJ#_INTCOL#                                                                   CLUSTER             SYS

看樣子只有HISTGRM$儲存在這個CLUSTER中。按理說這個物件是可以TRUNCATE的

SQL> truncate cluster c_obj#_intcol#;
truncate cluster c_obj#_intcol#
                 *
第 1 行出現錯誤:
ORA-00701: 無法變更熱啟動資料庫所需的物件
由於是BOOTSTRAP$物件,所以無法TRUNCATE.由於這個物件是420>59,因此不是核心BOOTSTRAP$物件,所以我們用得上EVENT 38003 了。
SQL> alter system set EVENT="38003 trace name context forever, level 10"
  2  SCOPE=SPFILE;

系統已更改。
SQL> shutdown immediate;
資料庫已經關閉。
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area  448790528 bytes
Fixed Size                  1297220 bytes
Variable Size             163579068 bytes
Database Buffers          276824064 bytes
Redo Buffers                7090176 bytes
資料庫裝載完畢。
資料庫已經開啟。
SQL> truncate cluster c_obj#_intcol#;
簇已截斷

SQL> drop user gzyb cascade;

User dropped


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

相關文章