Oracle 11.1.0.6数据库在归档到远端实例时出现这个错误。
详细错误信息为:
Wed DEC 26 12:39:20 2012 Error 1017 received logging ON TO the standby ------------------------------------------------------------ CHECK that the PRIMARY AND standby are USING a password file AND remote_login_passwordfile IS SET TO SHARED OR EXCLUSIVE, AND that the SYS password IS same IN the password files. returning error ORA-16191 ------------------------------------------------------------ Errors IN file /oracle/app/diag/rdbms/orcl/orcl1/trace/orcl1_arc2_533302.trc: ORA-16191: 主日志传送客户机没有登录到备用数据库 PING[ARC2]: Heartbeat failed TO CONNECT TO standby 'orcl2'. Error IS 16191. Wed DEC 26 12:43:05 2012 Errors IN file /oracle/app/diag/rdbms/orcl/orcl1/trace/orcl1_ora_455450.trc (incident=852209): ORA-00600: 内部错误代码, 参数: [kssadd: NULL parent], [], [], [], [], [], [], [] Incident details IN: /oracle/app/diag/rdbms/orcl/orcl1/incident/incdir_852209/orcl1_ora_455450_i852209.trc Wed DEC 26 12:43:07 2012 Trace dumping IS performing id=[cdmp_20121226124307] Wed DEC 26 12:43:08 2012 Sweep Incident[852209]: completed Wed DEC 26 12:43:12 2012 Errors IN file /oracle/app/diag/rdbms/orcl/orcl1/trace/orcl1_ora_1827082.trc (incident=852210): ORA-00600: 内部错误代码, 参数: [kssadd: NULL parent], [], [], [], [], [], [], [] Incident details IN: /oracle/app/diag/rdbms/orcl/orcl1/incident/incdir_852210/orcl1_ora_1827082_i852210.trc Trace dumping IS performing id=[cdmp_20121226124314] Wed DEC 26 12:43:22 2012 Errors IN file /oracle/app/diag/rdbms/orcl/orcl1/trace/orcl1_ora_1426102.trc (incident=852211): ORA-00600: 内部错误代码, 参数: [kssadd: NULL parent], [], [], [], [], [], [], [] Incident details IN: /oracle/app/diag/rdbms/orcl/orcl1/incident/incdir_852211/orcl1_ora_1426102_i852211.trc Wed DEC 26 12:43:25 2012 Trace dumping IS performing id=[cdmp_20121226124325] Wed DEC 26 12:44:09 2012 Sweep Incident[852211]: completed Sweep Incident[852210]: completed |
很遗憾,没有拿到客户的相关TRACE文件。因此无法确认出现ORA-600错误时,具体引发错误的语句以及堆栈信息。根据MOS的查询结果,这个kssadd: null parent的相关错误,只有一个和JOB相关的,虽然确认影响版本为11.1.0.7,很符合当前问题的版本,但是报错并未发生在JOB进程或CJQ进程上。
而从这个报错信息的发生来看,这个错误的出现与ORA-16191错误直接相关。这个600错误的出现都是在ORA-16191大量产生后出现的,而随着ORA-16191错误的被最终解决,该错误也没有再次出现。基本上可以确定,ORA-16191是这个ORA-600[kssadd: null parent]错误产生的一个诱因。
最后简单说明一下ORA-16191错误,导致这个问题的原因是主库修改了SYS的密码,导致主库归档到本库时密码不正确。在11g的情况下,如果开启了SEC_CASE_SENSITIVE_LOGON参数,那么有时即使复制了密码文件到目标数据库,报错依旧。将SEC_CASE_SENSITIVE_LOGON置为false,可以避免这个错误。