ORACLE11GRAC alert日誌ORA-600 [kqlnrc_1]錯誤處理

like052629發表於2014-11-27
今早檢查發現DBRAC庫節點1資料庫ORA-600 [kqlnrc_1],經分析發現是透過PL/SQL Developer連上來執行儲存過程報錯,
其儲存過程使用到同義詞失效引起!

具體分析過程如下:
1、檢視alert日誌如下:
Mon Mar 03 11:04:29 2014
Sweep [inc][1992719]: completed
Sweep [inc][1992718]: completed
Sweep [inc2][1992718]: completed
Errors in file /oraclelog/diag/rdbms/dbrac1/dbrac1i1/trace/dbrac1i1_ora_61080830.trc  (incident=1992720):
ORA-00600: internal error code, arguments: [kqlnrc_1], [0x70000113FC52DB8], [], [], [], [], [], [], [], [], [], []
Incident details in: /oraclelog/diag/rdbms/dbrac1/dbrac1i1/incident/incdir_1992720/dbrac1i1_ora_61080830_i1992720.trc
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 /oraclelog/diag/rdbms/dbrac1/dbrac1i1/trace/dbrac1i1_ora_61080830.trc  (incident=1992721):
ORA-00600: internal error code, arguments: [kqlnrc_1], [0x70000113FC52DB8], [], [], [], [], [], [], [], [], [], []
Incident details in: /oraclelog/diag/rdbms/dbrac1/dbrac1i1/incident/incdir_1992721/dbrac1i1_ora_61080830_i1992721.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
Mon Mar 03 11:04:38 2014
Errors in file /oraclelog/diag/rdbms/dbrac1/dbrac1i1/trace/dbrac1i1_ora_61080830.trc  (incident=1992722):
ORA-00600: internal error code, arguments: [kqlnrc_1], [0x70000113FC52DB8], [], [], [], [], [], [], [], [], [], []
Incident details in: /oraclelog/diag/rdbms/dbrac1/dbrac1i1/incident/incdir_1992722/dbrac1i1_ora_61080830_i1992722.trc
Use ADRCI or Support Workbench to package the incident.
See Note 411.1 at My Oracle Support for error and packaging details.
 
2、檢視trace日誌如下:
*** 2014-03-03 11:03:22.426
*** SESSION ID:(7208.55105) 2014-03-03 11:03:22.426
*** CLIENT ID:() 2014-03-03 11:03:22.426
*** SERVICE NAME:(dbrac1) 2014-03-03 11:03:22.426
*** MODULE NAME:(PL/SQL Developer) 2014-03-03 11:03:22.426
*** ACTION NAME:(SQL Window - New) 2014-03-03 11:03:22.426
 
Incident 1992718 created, dump file: /oraclelog/diag/rdbms/dbrac1/dbrac1i1/incident/incdir_1992718/dbrac1i1_ora_61080830_i1992718.trc
ORA-00600: internal error code, arguments: [kqlnrc_1], [0x70000113FC52DB8], [], [], [], [], [], [], [], [], [], []


3、繼續分析DUMP檔案:
LibraryHandle:  Address=70000113fc52db8 Hash=31dbed4 LockMode=S PinMode=S LoadLockMode=0 Status=INVL 
  ObjectName:  Name=TEST_OWNER.TEST_TAB@DBLNK_TESTDB2   
    FullHashValue=7f26177bcf3fe188cf0fbb3d031dbed4 Namespace=TABLE/PROCEDURE(01) Type=SYNONYM(05) Identifier=0 OwnerIdn=2147483644 
  Statistics:  InvalidationCount=2 ExecutionCount=0 LoadCount=1 ActiveLocks=1 TotalLockCount=5 TotalPinCount=5 
  Counters:  BrokenCount=1 RevocablePointer=1 KeepDependency=0 BucketInUse=19 HandleInUse=19 HandleReferenceCount=0 
  Concurrency:  DependencyMutex=70000113fc52e68(0, 31, 0, 0) Mutex=70000113fc52ee8(7208, 90587, 0, 6) 
  Flags=REM/PIN/TIM/[00022801] 
  WaitersLists:  
    Lock=70000113fc52e48[70000113fc52e48,70000113fc52e48] 
    Pin=70000113fc52e28[70000113fc52e28,70000113fc52e28] 
    LoadLock=70000113fc52ea0[70000113fc52ea0,70000113fc52ea0] 
 透過以上日誌我們可以看出由於在library cache中同義詞TEST_OWNER.TEST_TAB@DBLNK_TESTDB2無效導致!
 
4、檢視TESTDB2庫物件狀態如下:
SQL> set pagesize 10000 linesize 300
SQL> SELECT object_name,object_type,owner,status
  2             FROM   dba_objects 
  3           WHERE  object_name='TEST_TAB' and owner = 'TEST_OWNER';
 
OBJECT_NAME                 OBJECT_TYPE         OWNER                          STATUS
--------------------------- ------------------- ------------------------------ -------
TEST_TAB             SYNONYM             TEST_OWNER                  VALID
發現同義詞狀態正常,ORA-600此時在alert日誌中沒報。
 
綜上所述:
如果發現ORA-600錯誤一直報出,重新編譯同義詞解決問題!
 
詳細見官檔:
ORA-600 [kqlnrc_1] (文件 ID 1274843.1)

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

相關文章