且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Oracle 10.2.0.1.0数据库启动报错 ORA-00600 [keltnfy-ldminit]

更新时间:2022-08-22 10:29:11

问题描述:
在启动数据库时,出现ORA-00600错误,具体错误信息如下所示。其中数据库版本为10.2.0.1.0。
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
首先,检查alert警告日志。检查错误信息。错误信息如下:
Mon Nov 21 13:49:08 2016
Errors in file /home/oracle/oracle/product/10.2.0/db_1/admin/orcl/udump/orcl_ora_5698.trc:
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
USER: terminating instance due to error 600
Instance terminated by USER, pid = 5698

PMON started with pid=2, OS id=5703
PSP0 started with pid=3, OS id=5705
MMAN started with pid=4, OS id=5707
Mon Nov 21 13:50:18 2016
ORA-00130: invalid listener address '(ADDRESS=(PROTOCOL=TCP)(HOST=bogon)(PORT=1521))'
DBW0 started with pid=5, OS id=5711
DBW1 started with pid=6, OS id=5713
LGWR started with pid=7, OS id=5715
CKPT started with pid=8, OS id=5717
Mon Nov 21 13:50:38 2016
Errors in file /home/oracle/oracle/product/10.2.0/db_1/admin/orcl/bdump/orcl_smon_5719.trc:
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
Mon Nov 21 13:50:39 2016
Errors in file /home/oracle/oracle/product/10.2.0/db_1/admin/orcl/bdump/orcl_smon_5719.trc:
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
Mon Nov 21 13:50:39 2016
SMON: terminating instance due to error 474
Instance terminated by SMON, pid = 5719

其次,一看到ORA-00600错误,先使用MOS上的Look-up工具检查错误。
参考:文档 ID 153788.1:ORA-600/ORA-7445/ORA-700 Error Look-up Tool
ORA-600 [keltnfy-ldminit] (文档 ID 462888.1)
Startup Database Produces ORA-00600: [Keltnfy-Ldminit] (文档 ID 336447.1)
MOS上的文档(5486074.8)
ORA-600 [keltnfy-ldminit] can occur in the Server Generated Alert
subsystem when it cannot determine the Host Name or
Network Address. This can be caused by DNS server being unavailable.

通过对MOS官方文档的阅读,可以定位到是hostname或者DNS名称ping不通。并且尝试ping bogon主机名,发现是Ping不通。因此可以确认主机名被修改过,而在10.2.0.1版本中,修改主机名会导致数据库无法启动。因此就出现上面的错误。

检查一下/etc/sysconfig/network,发现hostname没有完全修改过来。

# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=localhost.localdomain

调整HOSTNAME=bogon,同时在/etc/hosts里增加Hostname和IP地址。
# cat /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
#HOSTNAME=localhost.localdomain
HOSTNAME=bogon

重新启动数据库,日志显示实例正常mount,正常恢复数据,并打开数据库。
Mon Nov 21 16:37:41 2016
Starting ORACLE instance (normal)
Mon Nov 21 16:37:47 2016
Database mounted in Exclusive Mode
Completed: ALTER DATABASE   MOUNT
Mon Nov 21 16:37:56 2016
Completed: ALTER DATABASE OPEN