Its not at all a good situation when anyone has to go face to face with ORA-00600. Well its not a nice error message to see and that too when you had least expected it. So what happens when this error comes? Actually there is no one reason for it. This error is an internal error raised by some issue occuring within the oracle’s code. There can be many reasons for this error to come and certainly I shall not cover them all here in this post itself. This post is about a specific ora-600 code that I have mentioned in the title and how did I overcome that. If you are interested than carry on reading.
Few days back we were in our lab and our machines were not in the network. We didn’t need the network too so we didn’t bother. In one of the discussions, there was a requirement that asked for network to be up. Those were Linux machines and students didn’t know how to enable network over there. Well I know a little about Linux so I did make it enable and also enabled the use of DHCP . Nothing seems to be wrong, network was up, internet also came up and Oracle was working fine. I would mention here that our /etc/hosts file was empty as the host information was not required and was picked up by DHCP. After one scenario, we needed to bounce the database.
After instance startup, we were greeted with ora-00600[keltnfy-ldmInit],[46],[1]. Well this ora-600 comes, its always suggested to contact support to find the cause and remedy for it. The problem was I couldn’t call support for me and the other solution was to re-install all the machines. Well I did read some where that all the codes of ora-00600 doesn’t mean that oracle needs to be contacted to rectify it. So I searched a bit and found that this error code that came to us is Oracle’s way of saying that it couldn’t find the information of the host on which it was sitting. Its certainly true as we had enabled DHCP and Oracle is not at all happy with DHCP enabled systems.
So what happened was that Oracle was looking for the host information from the /etc/hosts file but it was empty. Now for oracle to start, it needs a host name. As the file was empty , it couldn’t find anything about it from there. So it stopped the mounting of the database. So the solution was that we edited the /etc/hosts file and entered the host information with host name as “local host” and the IP address that we were getting at that time. As the machines wouldn’t be rebooted so it was safe to enter that value. Tried starting oracle and voila! We were back in the business!
Our database was 10201 on RHEL. This error is also removed from upgrading db to 10202 and further. So if you are on 10201 and are facing this error, you need to have the patch applied to it and upgrade to 10202.
Though I did remove this error with a little search but still the fact doesn’t change that when you hit ora-600, its high time to contact Oracle Support Services as you have hit some thing really serious.
Hi Aman,
Very nice and interesting to know all these things..
looking for more on performance tuning Concepts.
Regards,
Pavan Kumar N
Very nice post Aman .
I got this error , while paying with Oracle XE … here is what I did
http://virag.sharma.googlepages.com/oraclexemadeeasy#_Getting_ORA-600_error
Virag,
.
Thanks a ton for the kind words. Its an honour to hear some thing like this from you. Certainly the error is basically because Oracle can’t find a reference to host. Great post, you have made XE really easy
Aman….
Pavan,
.
Thanks for the kind words. Lets see with my little knowledge, how much I would be able to put in
Do keep coming here often for reading and whenever required correcting also.
Cheers
Aman….
Just in addition,this should be the format,
10.176.106.222 oraclesrv localhost.localdomain
Hello Aman,
Thanks for this solution