分类: Oracle
2010-05-26 23:43:39
启动数据库的时候报错:
[oracle@gaojf]$ sqlplus "/as sysdba"
SQL*Plus: Release
Copyright (c) 1982, 2006, 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/hosts中127.0.0.1对应的机器修改成network文件中的一样,将会导致上面描述的错误。