Chinaunix首页 | 论坛 | 博客
  • 博客访问: 664808
  • 博文数量: 168
  • 博客积分: 2928
  • 博客等级: 中校
  • 技术积分: 1904
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-04 09:56
文章分类

全部博文(168)

文章存档

2010年(168)

我的朋友

分类: Oracle

2010-04-10 11:59:11

修改/etc/hosts权限引起ORACLE异常宕机
 
接到客户电话,说ORACLE异常宕了。
我进去一看,CONNECT上了,没问题啊。
尝试select name from v$datafile看数据文件先。。
提示NOT LOGGED ON。怪。
startup却又说INSTANCE已经起来,先关闭。
好,先SHUTDOWN吧,却提示ORA00600的错误。
检查ALERT_SID.LOG,发现如下报错:
Errors in file /oracle/app/admin/orcl/udump/orcl_ora_2617668.trc:
ORA-00600: internal error code, arguments: [keltnfy-ldmInit], [46], [1], [], [], [], [], []
USER: terminating instance due to error 600
Instance terminated by USER, pid = 2617668

我依稀记得这个00600是个比较严重的错误,好像还与BUG有关

问客户:刚才对数据库作过什么操作没?
他说没,只是修改了主机IP。

netstat -in输出ENT3网卡有2个IP;smitty tcpip进去却检查到只有一个IP在ENT3上
我估计他是用IFCONFIG来临时赋予的IP

再检查HOSTS文件,ORACLE用户居然无法读取(当时是在ORACLE登陆)!
我想,问题可能就出现在这里了

于是ROOT进去,发现HOSTS文件条目并没有错,只是权限是700;于是chown 755 hosts
尝试再打开实例,发现可以正常打开了,ALERT_SID.LOG也没再提示00600的内部错误了。

后来我在自己的虚拟机上测试了一把:
1.把HOSTS文件权限改为700后,无法打开ORACLE
2.把HOSTS里的主机名去掉,包括127.0.0.0和实际IP所对应的主机名都去掉,无法打开ORACLE
3.把127.0.0.0或者实际IP对应的主机名去掉任意一个,ORACLE能打开
4.在ORACLE打开的情况下,把HOSTS权限改为700,或者把127.0.0.0和实际IP对应的主机名删除掉,又发现ORA-00600的错误
阅读(1776) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~