虚拟机VMware安装OracleRAC.RedHat Enterprise AS4安装Oracle 9i RAC

草木瓜  20080226

一、本文环境

 同<虚拟机VMware安装OracleRAC.RedHat Enterprise AS4安装Oracle10g RAC>
 
 9i RAC 与 10g RAC 类似,须要先安装OCM( oracle cluster manager) 再安装数据库。

二、创建虚拟机与安装条件 

 创建虚拟机 略
 
 内核
  AS2.1,内核2.4.9 e16以上 AS 3.0 以上 无内核要求
  
三、配置节点环境

 可参照《虚拟机VMware安装OracleRAC.环境综述》一文配置:
 
 <五、配置两台虚拟机>一节
  linuxrac9 linuxrac6
 <六、配置双机环境>一节 
  安装Oracle 9i RAC 使用 rsh
 <七、设置共享磁盘>一节
  笔者单独添加另一共享磁盘,存放 9i Rac的 quorum 文件(类似于10g的ocr与vote)。由于使
 用的是原安装10g环境,VMware就存在两块共享磁盘:

  E:/Program Files/VMware/VMware GSX Server>
  E:/Program Files/VMware/VMware GSX Server>vmware-vdiskmanager -c -s 100Mb -a lsi
  logic -t 2 "E:/VMDISK/LinuxShareDisk1.vmdk"
  Using log file C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/vdiskmanager.log
  Creating monolithic preallocated disk 'E:/VMDISK/LinuxShareDisk1.vmdk'
    Create: 100% done.
  Virtual disk creation successful.

  disk.locking = "FALSE"
  scsi1.sharedBus = "virtual"
  scsi1.present = "TRUE"
  scsi1.virtualDev = "lsilogic"
  
  scsi1:0.mode = "persistent"  
  scsi1:0.present = "TRUE"
  scsi1:0.fileName = "E:/VMDISK/RACDATA.vmdk"
  scsi1:0.deviceType = "plainDisk"
  
  scsi1:1.mode = "persistent"  
  scsi1:1.present = "TRUE"
  scsi1:1.fileName = "E:/VMDISK/OCM.vmdk"
  scsi1:1.deviceType = "plainDisk"

  [root@linuxrac9 liwei]# fdisk -l
  
  Disk /dev/sda: 8589 MB, 8589934592 bytes
  255 heads, 63 sectors/track, 1044 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  
     Device Boot      Start         End      Blocks   Id  System
  /dev/sda1   *           1         978     7855753+  83  Linux
  /dev/sda2             979        1043      522112+  82  Linux swap
  
  Disk /dev/sdb: 1073 MB, 1073741824 bytes
  255 heads, 63 sectors/track, 130 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  
     Device Boot      Start         End      Blocks   Id  System
  /dev/sdb1               1         130     1044193+  83  Linux
  
  Disk /dev/sdc: 104 MB, 104857600 bytes
  64 heads, 32 sectors/track, 100 cylinders
  Units = cylinders of 2048 * 512 = 1048576 bytes
  
     Device Boot      Start         End      Blocks   Id  System
  /dev/sdc1               1         100      102384   83  Linux
 
 
四、设置节点机ORACLE的安装环境(各节点皆须设置)

 同<虚拟机VMware安装OracleRAC.RedHat Enterprise AS4安装Oracle10g RAC>

五、设置共享裸设备

 由于9i RAC quorum 须要使用裸设备,要进行如下设置(所有节点):
 
 [root@linuxrac9 dev]# raw
 Usage:
   raw /dev/raw/rawN <major> <minor>
   raw /dev/raw/rawN /dev/<blockdev>
   raw -q /dev/raw/rawN
   raw -qa
  
 [root@linuxrac9 dev]# raw /dev/raw/raw1 /dev/sdc1
 /dev/raw/raw1:  bound to major 8, minor 33
 
 /dev/sdc1即为用于OCM quorum的磁盘文件。
 
 [root@linuxrac9 dev]# chown oracle.oradba /dev/raw/raw1
 [root@linuxrac9 dev]# ll /dev/raw/raw1
 crw-rw----  1 oracle oradba 162, 1 Mar 26 20:57 /dev/raw/raw1
 
 [root@linuxrac9 dev]# dd if=/dev/zero of=/dev/raw/raw1 bs=1M count=10240
 1024+0 records in
 1024+0 records out
 [root@linuxrac9 dev]#
 
 修改 /etc/rc.local 加入  raw /dev/raw/raw1 /dev/sdc1 ,启动自动进行设置。


七、使用Oracle安装介质安装OCM

 介质使用:
 
    ship_9204_linux_disk1.cpio.gz
    ship_9204_linux_disk2.cpio.gz
    ship_9204_linux_disk3.cpio.gz
   
    安装前准备见:
    《从服务器构建说起(四).Linux下安装配置Oracle》  <二、修正错误> <三、安装与配置中新的问题>
    《虚拟机RedHatLinux9安装Oralce92全过程》
   
    注意需要打Patch和修改gcc。


    创建Quorum文件
   
    ./runInstaller 安装界面中选择oracle cluster manager。点击next,输入public node,linuxrac9 linuxrac6。
点击next,输入private node,linuxrac9-prv和linuxrac6-prv。点击next,输入Quorum文件位置。

八、修改所有节点的cmcfg.ora

 注意HostName以下内容为新增,加入了hangcheck-timer模块

 ClusterName=Oracle Cluster Manager, version 9i
 MissCount=210
 PrivateNodeNames=linuxrac9-priv linuxrac6-priv
 PublicNodeNames=linuxrac9 linuxrac6
 ServicePort=9998
 CmDiskFile=/dev/raw/raw1
 HostName=linuxrac9
 HeartBeat=15000
 PollInterval=1000
 KernelModuleName=hangcheck-timer

九、启动OCM

 进行oracm的bin目录 su root后,执行脚本,在log/cm.log显示:

 oracm, version[ 9.2.0.2.0.47 ] started {Wed Mar 12 20:39:09 2008 }^M
 KernelModuleName is hangcheck-timer {Wed Mar 12 20:39:09 2008 }^M
 OemNodeConfig(): Network Address of node0: 192.168.0.9 (port 9998)
  {Wed Mar 12 20:39:09 2008 }^M
 OemNodeConfig(): Network Address of node1: 192.168.0.6 (port 9998)
  {Wed Mar 12 20:39:09 2008 }^M
 >WARNING:  OemInit2: Opened file(/oradata/ocm/racfile 8), tid = main:16384 file = oem.c, line = 491 {Wed Mar 12 20:39:09 2008 }^M
 InitializeCM: ModuleName = hangcheck-timer  {Wed Mar 12 20:39:09 2008 }^M
 >ERROR:    InitializeCM: query_module() failed, tid = main:16384 file = cmstartup.c, line = 327 {Wed Mar 12 20:39:09 2008 }^M
 Debug Hang :StartNMMon (PID=2612) Registered with watchdog daemon. {Wed Mar 12 20:39:09 2008 }^M
 CreateLocalEndpoint(): Network Address: 192.168.0.9
  {Wed Mar 12 20:39:09 2008 }^M
 Debug Hang : ClusterListener (PID=2617) Registered withwatchdog daemon. {Wed Mar 12 20:39:09 2008 }^M
 Debug Hang : CmConnectListener (PID=2618):Registered with watchdog daemon. {Wed Mar 12 20:39:09 2008 }^M
 Debug Hang :PollingThread (PID=135159169): Registered with  {Wed Mar 12 20:39:09 2008 }^M
 Debug Hang : DiskPingThread (PID=135159169): Registered with  {Wed Mar 12 20:39:09 2008 }^M
 Debug Hang :SendingThread (PID=135159169): Registered with  {Wed Mar 12 20:39:09 2008 }^M
 NMEVENT_SUSPEND [00][00][00][00][00][00][00][01] {Wed Mar 12 20:39:15 2008 }^M
 
 最后也提示节点active了,多个节点皆如此,查看oracm进程也正常。再./runInstaller,欢迎画面后,
就是不显示多少节点的安装画面。这个问题始终不能解决,安装失败。
 
 这个错误堪称经典错误,表面上看是hangcheck-timer,其实不然,在主机lsmod会显示
hangcheck_timer         3289  0,又尝试将cmcfg.ora修改为KernelModuleName=hangcheck_timer也是
不行,网络搜索了一堆,倒是发现很多人出现此类问题,无法得到解决。


十、安装失败

 这个问题比较奇怪,目前推测解决方案可能有二:
 a. RedHat Enterprise AS4 安装 9204 RAC BUG较多,更换为 AS3进行安装。
 b. 安装 9204 OCM后,安装9206 Patch


Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐