[oracle@oracle10g_1 ~]$ sql  / as sysdba
[uniread] Loaded history (350 lines)

SQL*Plus: Release 10.2.0.1.0 - Production on Fri Nov 26 09:24:44 2010

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []

原因:

 

服务器hostname没有正确配置,通过hostname命令得到的主机名无法ping通,Oracle10g认为主机无法达到所以启动数据库报错。原

来昨天有人更改了主机名,检查一下本机的hosts文件,发现因为修改主机名的时候没有把hosts文件对应的主机名做对应的修改,从

而引发这个错误。

 

解决方法:

 

hostname添加到/etc/hosts文件中,重新启动数据库。


解释:

 

如果出现这个bug时,启动实例时报ORA-00600: [keltnfy-ldmInit], [46]错误,如果没有创建数据库,将无法创建数据库,同时

sqlplus连接数据库会非常慢,这时大家可以用lsof去看sqlplus进程在干什么。


10gR2+rhel4u1中,一般不要随便修改机器的名称,如果要修改机器名,稍一不慎重,就有可能会触发ORA-00600: [keltnfy-

ldmInit], [46]这样的错误,查metalink没有找到任何信息,最严重的结果是实例无法启动,如果一定要修改机器名,需要修改的比

较彻底,需要修改/etc/hosts,/etc/sysconfig/network这两个文件,如果忘了将/etc/hosts127.0.0.1对应的机器修改成network

文件中的一样,将会导致上面描述的错误