Chinaunix首页 | 论坛 | 博客
  • 博客访问: 100462
  • 博文数量: 5
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 151
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-29 09:36
文章分类

全部博文(5)

文章存档

2008年(5)

我的朋友

分类: Oracle

2008-10-25 01:25:20

环境:P550*2,DS4500,AIX 5306,Oracle 10G R2 RAC,ASM

背景:一台P550的HBA卡损坏,更换HBA卡后运行cfgmgr,出现鬼盘,阵列上的盘认到2倍,不能满足多路径负载均衡及冗余功能,于是使用crs_stop -2停止数据库,停止crs服务(crsctl stop crs),删除原有hdisk的设备文件,并删除HBA卡的相关设备文件dac0/1,fcs0/1,重新运行cfgmgr,不再出现鬼盘。但在启动crs服务时出错,说是找不到OCR磁盘。

1、查找OCR配置文件

# cat /etc/oracle/ocr.loc
ocrconfig_loc=/dev/ocr1
local_only=FALSE

2、查找配置文件中指定的设备文件

# ls -al /dev/ocr*
ls: 0653-341 The file /dev/ocr* does not exist.

一般情况下,crs使用的OCR磁盘应为/dev/rhdisk1之类,为何成了/dev/ocr1了呢?经询问Oracle安装工程师得知,因最初安装时2台主机的系统中识别到的磁盘设备文件小号不一致导致CRS无法正常安装,所以采用了自建设备文件来统一的办法,所以2台主机的OCR设备文件成了/dev/ocr1了。

那看来是因为删除原LUN的设备文件及新生成的鬼盘设备文件时,也同时自动删除了自建的设备文件,该文件丢失导致了CRS无法启动。

3、从另一台主机查询/dev/ocr1的信息,重新生成该设备文件/dev/ocr1,如下:

mknod /dev/ocr1 c 24 5
;24为主号,5为次号,需要保证2台主机主、次号一致
4、修改属主、权限
chown oracle:dba /dev/ocr1
chmod 660 /dev/ocr1

5、修改其它使用过mknod自建的设备文件并修改属主、权限;

重新启动CRS(crsctl start crs),然后启动数据库(crs_start -2),Oracle RAC恢复正常。


阅读(3380) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~