圖解SLES 11 SP3+Oracle 11gR2 RAC在VirtualBOX上的安裝與部署

oliseh發表於2016-06-20

本文分為8個部分,以圖文並茂的形式介紹了如何在VirtualBOX上安裝與部署SLES11 SP3+Oracle 11gR2 RAC環境,旨在給有類似部署需求的讀者作參考。


第一部分:安裝
SLES 11

第二部分:安裝完成後的基本配置

第三部分:建立RAC安裝所需要的目錄和使用者

第四部分:安裝 RAC前的預配置工作

第五部分:clone出第二個節點

第六部分:配置共享儲存

第七部分:安裝配置GI

第八部分:安裝DB與建庫


其中最後兩個部分僅把筆者實施過程中遇到的問題進行了描述,不詳細展開整個過程,有興趣的讀者可以參閱
oracle官方文件或者網上類似資料。

第一部分:安裝SLES 11

新建虛擬機器,選擇openSUSE (64bit),圖1

 

 

至少分配4G記憶體,圖2

 

 

以下三個步驟在建立虛擬硬碟之前先設定硬碟屬性,圖345

 

 

 

 

6:設定虛擬檔案路徑及大小,定義80G

 

 

7:主介面已經顯示出一個處於已關閉狀態名為suse1的虛擬機器了

 

 

8:在常規選項裡對虛擬機器的快照路徑以及是否啟用主機與虛擬機器間的複製貼上功能按需進行設定,注意後面需要在虛擬機器裡安裝增強包才能真正使用複製貼上的功能,這裡只是起到一個開關的作用

 

 

9:在系統選項裡可以設定虛擬機器所能用到的cpu個數

 

 

11 & 12:因為RAC環境需要至少一張public的普通網路卡和一張private的內聯網路卡,在網路選項裡定義兩張相應型別的網路卡

 

 

 

13:在共享資料夾選項裡,設定主機與虛擬機器之間的共享目錄,用於檔案共享,比ftp方便不少

 

 

14:在Vbox右側的介面裡會把剛才的選擇進行彙總,可以進一步確認是否還有需要改動的地方

 

 

16:啟動名為suse1的虛擬機器,選中SLES 11安裝介質對應的iso檔案

 

 

18:安裝介面隨即彈出

 

 

19202223:開始安裝

 



 

24:在”expert”選項卡里對部分設定進行更改

 

 

25:更改磁碟分割槽

 

 

26:選中唯一一塊硬碟sda進行分割槽,

 

 

--(1)boot分割槽:200M,圖272829

 


--(2)、根分割槽:12G、圖3031

 

 

 

--(3)SWAP2G,圖323334


 

 

--(4)/oracle檔案系統:剩下的都加入進去,約65G,需要先建立一個擴充套件分割槽,建立後再此擴充套件分割槽上建立/oracle檔案系統,圖35373839

 

 

4041:這就是最終的分割槽佈局

 

 

4243:回到”change”,選擇”software”選項,勾上必要的軟體包,如”Oracle Server Base”(會建立oracle使用者、oinstalldba使用者組)

 

 

444546:點選”install”進入安裝介面

 

 

474849:安裝完成後的基本配置嚮導:設定root密碼,主機名域名

 

 

50:進入”Network Interface”介面,給網路卡配置IP地址

 

--(1) Public網路卡,圖51

 

--(2) private網路卡,圖52

 

5354:網路卡彙總資訊,點”Next”系統將進行配置

 

 

 

 

55:跳過網路連線測試

 

 

56:跳過網路服務配置

 

 

57:本地認證

 

 

58:先不建立任何使用者

 

 

59:等待系統寫入配置

 

 

6061:最後一步:掃描硬體

 

 

 

62:大功告成,勾選了”Clone This system for AutoYaST”表示安裝期間的所有配置儲存在/root/autoyast.xml檔案裡

 

 

第二部分:安裝完成後的基本配置

安裝Vbox的增強功能,便於方便的在hostOSguestOS間進行CV操作

63:在Vbox的安裝目錄下有一個名為VboxGuestAdditions.iso的安裝映像檔案,選中它

 

 

64:系統會自行啟動Vbox增強工具的安裝

如果遇到上圖中的” building the main guest additions module failed”錯誤的情況,按照提示安裝上名為kernel-default-devel*package即可,安裝過程就不展開了。

 

關閉防火牆

suse1:/etc # service SuSEfirewall2_init status

Checking the status of SuSEfirewall2                                                                            running

suse1:/etc # service SuSEfirewall2_setup status

Checking the status of SuSEfirewall2                                                                              running

suse1:/etc # service SuSEfirewall2_init stop

suse1:/etc # service SuSEfirewall2_setup stop

Shutting down the Firewall                                                                                        done

suse1:/etc # service SuSEfirewall2_setup status

Checking the status of SuSEfirewall2                                                                              unused

suse1:/etc # service SuSEfirewall2_init status

Checking the status of SuSEfirewall2                                                                              unused

 

suse1:/media/sf_suse1_share # chkconfig --list | grep -i fire

SuSEfirewall2_init        0:off  1:off  2:off  3:on   4:off  5:on   6:off

SuSEfirewall2_setup       0:off  1:off  2:off  3:on   4:off  5:on   6:off

suse1:/media/sf_suse1_share # chkconfig --level 35 SuSEfirewall2_init off

suse1:/media/sf_suse1_share # chkconfig --level 35 SuSEfirewall2_setup off

suse1:/media/sf_suse1_share # chkconfig --list | grep -i fire

SuSEfirewall2_init        0:off  1:off  2:off  3:off  4:off  5:off  6:off

SuSEfirewall2_setup       0:off  1:off  2:off  3:off  4:off  5:off  6:off

 

必須要安裝的包:

binutils-2.21.1-0.7.25 (實際安裝版本:binutils-2.23.1-0.17.18)

gcc-4.3-62.198

gcc-c++-4.3-62.198

glibc-2.11.3-17.31.1 (實際安裝版本:glibc-2.11.3-17.54.1)

glibc-devel-2.11.3-17.31.1(實際安裝版本:glibc-devel-2.11.3-17.54.1)

ksh-93u-0.6.1(實際安裝版本:ksh-93u-0.18.1)

libaio-0.3.109-0.1.46

libaio-devel-0.3.109-0.1.46

libcap1-1.10-6.10

libstdc++33-3.3.3-11.9

libstdc++33-32bit-3.3.3-11.9

libstdc++43-devel-4.3.4_20091019-0.22.17(實際安裝版本:libstdc++43-devel-4.3.4_20091019-0.37.30)

libstdc++46-4.6.1_20110701-0.13.9 (實際安裝版本:libstdc++46-4.6.9-0.11.38)

libgcc46-4.6.1_20110701-0.13.9 (實際安裝版本:libstdc++46-4.6.9-0.11.38)

make-3.81  (實際安裝版本:make-3.81-128.20)

sysstat-8.1.5-7.32.1 (實際安裝版本:sysstat- 8.1.5-7.45.24)

xorg-x11-libs-32bit-7.4 (實際安裝版本:xorg-x11-libs-32bit-7.4-8.26.32.1)

xorg-x11-libs-7.4 (實際安裝版本:xorg-x11-libs-7.4-8.26.32.1)

xorg-x11-libX11-32bit-7.4 (實際安裝版本:xorg-x11-libX11-32bit-7.4-5.9.1)

xorg-x11-libX11-7.4 (實際安裝版本:xorg-x11-libX11-.4-5.9.1)

xorg-x11-libXau-32bit-7.4 (實際安裝版本:xorg-x11-libXau-32bit-7.4-1.15)

xorg-x11-libXau-7.4 (實際安裝版本:xorg-x11-libXau-7.4-1.15)

xorg-x11-libxcb-32bit-7.4 (實際安裝版本:xorg-x11-libxcb-32bit-7.4-1.29.1)

xorg-x11-libxcb-7.4 (實際安裝版本:xorg-x11-libxcb-7.4-1.29.1)

xorg-x11-libXext-32bit-7.4 (實際安裝版本:xorg-x11-libXext-32bit-7.4-1.16.21)

xorg-x11-libXext-7.4 (實際安裝版本:xorg-x11-libXext-7.4-1.16.21)

unixODBC-2.2.14 (64-bit) (實際安裝版本:unixODBC-2.2.12-198.17)

unixODBC-devel-2.2.14 (64-bit) (實際安裝版本:unixODBC-devel-2.2.12-198.17)

 

第三部分:建立RAC安裝所需要的目錄和使用者

---建立使用者組

groupadd -g 2000 oinstall

groupadd -g 2001 dba

groupadd -g 2002 asmdba

groupadd -g 2003 asmadmin

groupadd -g 2004 asmoper

 

---建立使用者,設定密碼

useradd -G asmdba,dba -g oinstall -s /bin/ksh -u 3000 oracle

useradd -G asmdba,asmadmin,asmoper -g oinstall -s /bin/ksh -u 3001 grid

passwd oracle

passwd grid

 

---建立GIDB安裝目錄,設定許可權

mkdir -p /oracle/app                           <---central Inventory的上層目錄

mkdir -p /oracle/app/11.2.0/grid                                          <---grid使用者的ORACLE_HOME

mkdir -p /oracle/app/grid                                                       <---grid使用者的ORACLE_BASE

chown -R grid.oinstall /oracle/app/

 

mkdir -p /oracle/app/oracle/                     <---oracle使用者的ORACLE_BASE

mkdir -p /oracle/app/oracle/product/11.2.0/db_1    <---oracle使用者的ORACLE_HOME

chown -R oracle.oinstall /oracle/app/oracle

 

chmod g+w /oracle/app  <---GI安裝完屬主會變成root.oinstall,提前加上同組寫許可權,以便Inventory目錄能夠正常建立

 

第四部分:安裝 RAC前的預配置工作

---配置/etc/hosts

192.168.1.121 suse1 suse1.oracle.com

192.168.1.122 suse1-vip

172.168.1.121 suse1-priv

 

192.168.1.123 suse2 suse2.oracle.com

192.168.1.124 suse2-vip

172.168.1.123 suse2-priv

 

192.168.1.126 suse-cluster suse-cluster-scan

 

---定義grid使用者環境變數

export ORACLE_BASE=/oracle/app/grid

export ORACLE_HOME=/oracle/app/11.2.0/grid

export PATH=$PATH:$ORACLE_HOME/bin

export ORA_NLS10=$ORACLE_HOME/nls/data

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH:

export CLASSPATH=$ORACLE_HOME/JRE/lib:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

set -o vi

 

---定義oracle使用者環境變數

export ORACLE_BASE=/oracle/app/oracle

export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/db_1

export PATH=$PATH:$ORACLE_HOME/bin

export ORA_NLS10=$ORACLE_HOME/nls/data

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH:

export CLASSPATH=$ORACLE_HOME/JRE/lib:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

set -o vi

 

---設定gridoracle使用者的limit引數,在/etc/security/limits.conf里加入

oracle soft nproc 2047

oracle hard nproc 16384

oracle soft nofile 1024

oracle hard nofile 65536

oracle soft stack 10240

oracle hard stack 32768

 

grid soft nproc 2047

grid hard nproc 16384

grid soft nofile 1024

grid hard nofile 65536

grid soft stack 10240

grid hard stack 32768

 

---設定系統核心引數,在/etc/sysctl.conf里加入,並使之生效

kernel.sem=250 32000 100 128    #(系統預設1250 32000 100 256)

kernel.shmall=524288                 #(系統預設2097152)

kernel.shmmax= 2147483648    #(系統預設3294967296)

kernel.shmmni=4096

fs.file-max=6815744

fs.aio-max-nr=1048576

net.ipv4.ip_local_port_range=9000 65500

net.core.rmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=1048576

vm.hugetlb_shm_group= 2000   #(oinstallgroupid)

 

sysctl -p

chkconfig boot.sysctl on    #系統啟動時能讀取/etc/sysctl.conf

 

---/etc/pam.d/xdm/etc/pam.d/su兩個檔案里加入PAM相關設定

session required pam_limits.so

 

---配置時間同步

(1)     /etc/ntp.conf

刪除

server 127.127.1.0            # local clock (LCL)

加入

server 192.168.1.121            # local clock (LCL)

註釋掉

fudge  127.127.1.0 stratum 10 # LCL is unsynchronized

 

(2)     /etc/sysconfig/ntp

NTPD_OPTIONS="-g -u ntp:ntp"

修改成

NTPD_OPTIONS="-x -g -u ntp:ntp"

 

(3)     ntp服務設定並啟動

suse1:/etc/sysconfig # chkconfig --level 35 ntp on

insserv: warning: current start runlevel(s) (3 5) of script `vboxadd-x11' overwrites defaults (empty).

 

suse1:/etc/sysconfig # chkconfig --list ntp

ntp                       0:off  1:off  2:off  3:on   4:off  5:on   6:off

 

suse1:/etc/sysconfig # rcntp status

Checking for network time protocol daemon (NTPD):                                                                                                                     unused

suse1:/etc/sysconfig # rcntp start

Starting network time protocol daemon (NTPD)                                                                                                                          done

suse1:/etc/sysconfig # rcntp status

     remote           refid      st t when poll reach   delay   offset  jitter

==============================================================================

 suse1           .INIT.          16 u    -   64    0    0.000    0.000   0.000

 

Checking for network time protocol daemon (NTPD):    

 

suse1:/etc/sysconfig # ps -ef|grep -i ntp | grep -v grep         

ntp      24032     1  0 17:13 ?        00:00:00 /usr/sbin/ntpd -p /var/run/ntp/ntpd.pid -x -g -u ntp:ntp -i /var/lib/ntp -c /etc/ntp.conf     

                     

第五部分:clone出第二個節點

656667:從suse1.tpl這個虛擬機器Clone出一個名為suse1的虛擬機器

 

 

 

 

以上clone的過程預設會將目標主機與源主機的.vdi檔案放在同一個碟符下,如果想放在不同的碟符裡,可以在clone完之後使用如下方法將目標主機的.vdi檔案挪至新的碟符:

A)      suse1-disk1.vdi從源目錄F:\VBoxVMs\SUSE 11\suse1移到目標目錄G:\VBoxVMs\SUSE 11\suse1

 

B)      執行如下命令在VBOX命令列為新路徑下的.vdi檔案生成一個新的UUID

"E:\Program Files\VirtualBox\VBoxManage.exe" internalcommands sethduuid "G:\VBoxVMs\SUSE 11\suse1\suse1-disk1.vdi"

 

UUID changed to: a9f2a180-8c4b-4558-bef1-a7af09139f8a

 

C)      儲存設定介面中刪除原來的.vdi檔案,指向新的.vdi檔案,圖67-167-267-3

 

 

備份位置和共享目錄有必要的話也改一下,圖6869

 

 

 

---要使clone出來的節點能正常啟動,還須完成如下配置

首次啟動clone節點是會停在以下介面,圖70

 

原因在於clone出來的節點上的硬碟編號與源主機硬碟編號不同,但在clone主機的/boot/grub/menu.lst檔案裡仍保留著源主機上的硬碟編號,啟動時按照menu.lst檔案中的編號在clone主機上找當然找不到對應的硬碟,於是就出現了上述介面,’ata-VBOX_HARDDISK_VB52946b9d-44ce5752’這一串就是源主機上的硬碟編號在clone主機無法找到對應硬碟。

解決方法:

按照介面的提示輸入”n”進入shell提示符,在/dev/disk/by-id目錄下找到clone主機真正的硬碟編號,圖71

 

 

通過SLES 11安裝光碟引導重啟clone主機到Rescue模式,圖7273

 

 

手工mount /boot,圖74

mount /dev/sda1 /boot

 

 

修改/boot/grub/menu.lst裡的”52946b9d-44ce5752”替換成”73b3b14c-7e51ecb7”,圖75,儲存後重啟主機,注意這次從硬碟啟動

 

啟動時還是會有些小問題,在fsck的時候還是去找了源主機上的硬碟,圖76,按提示進入maintenance模式:

 

 

77/etc/fstab檔案中上半部分還是使用了源主機的硬碟編號,把這部分也改成新的編號

 

 

修改後再次重啟成功,事後經過多次測試可以在mount /boot的同時mount /dev/sda2 /mnt,將/mnt/etc/fstab裡的硬碟編號也改成新的,這樣就少了一次重啟

 

---clone出來的節點作配置修改

因為RAC要求不同節點對應的網路卡名稱必須相同,先刪除多餘網路卡、配置IP地址,再到/etc/udev/rules.d/70-persistent-net.rules裡修改網路卡名稱”eth2”修改為”eth0” ”eth3”修改為”eth1”,然後重啟主機,進行IP地址配置,圖77-2787980

 

 

配置完成從源主機Ping測試網路連通性

suse1:/etc/sysconfig/network # ping suse2

PING suse2 (192.168.1.123) 56(84) bytes of data.

64 bytes from suse2 (192.168.1.123): icmp_seq=1 ttl=64 time=5.89 ms

64 bytes from suse2 (192.168.1.123): icmp_seq=2 ttl=64 time=0.257 ms

^C

--- suse2 ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 1001ms

rtt min/avg/max/mdev = 0.257/3.075/5.894/2.819 ms

suse1:/etc/sysconfig/network # ping suse2-priv

PING suse2-priv (172.168.1.123) 56(84) bytes of data.

64 bytes from suse2-priv (172.168.1.123): icmp_seq=1 ttl=64 time=4.80 ms

^C

--- suse2-priv ping statistics ---

1 packets transmitted, 1 received, 0% packet loss, time 0ms

rtt min/avg/max/mdev = 4.804/4.804/4.804/0.000 ms

 

 

第六部分:配置共享儲存

---Vbox介面裡給第1個節點後新增儲存,圖818283

 

 

 

 

總共新增了1G2G4G三種規格的盤,每種盤各8塊,將這些盤的屬性改為共享,圖84

 

 

---讓第2個節點認出剛才在第1個節點上配置的共享儲存,同樣需要先關閉節點,圖8586

 

 

 

---重啟suse1suse2兩個節點完成udev的配置,使之成為ASM candidate device

suse1:/dev # ls -l sd*

brw-rw---- 1 root disk  8,   0 Jun 15 07:33 sda

brw-rw---- 1 root disk  8,   1 Jun 15 07:33 sda1

brw-rw---- 1 root disk  8,   2 Jun 15 07:33 sda2

brw-rw---- 1 root disk  8,   3 Jun 15 07:33 sda3

brw-rw---- 1 root disk  8,   4 Jun 15 07:33 sda4

brw-rw---- 1 root disk  8,   5 Jun 15 07:33 sda5

brw-rw---- 1 root disk  8,  16 Jun 15 07:33 sdb

brw-rw---- 1 root disk  8,  32 Jun 15 07:33 sdc

brw-rw---- 1 root disk  8,  48 Jun 15 07:33 sdd

brw-rw---- 1 root disk  8,  64 Jun 15 07:33 sde

brw-rw---- 1 root disk  8,  80 Jun 15 07:33 sdf

brw-rw---- 1 root disk  8,  96 Jun 15 07:33 sdg

brw-rw---- 1 root disk  8, 112 Jun 15 07:33 sdh

brw-rw---- 1 root disk  8, 128 Jun 15 07:33 sdi

brw-rw---- 1 root disk  8, 144 Jun 15 07:33 sdj

brw-rw---- 1 root disk  8, 160 Jun 15 07:33 sdk

brw-rw---- 1 root disk  8, 176 Jun 15 07:33 sdl

brw-rw---- 1 root disk  8, 192 Jun 15 07:33 sdm

brw-rw---- 1 root disk  8, 208 Jun 15 07:33 sdn

brw-rw---- 1 root disk  8, 224 Jun 15 07:33 sdo

brw-rw---- 1 root disk  8, 240 Jun 15 07:33 sdp

brw-rw---- 1 root disk 65,   0 Jun 15 07:33 sdq

brw-rw---- 1 root disk 65,  16 Jun 15 07:33 sdr

brw-rw---- 1 root disk 65,  32 Jun 15 07:33 sds

brw-rw---- 1 root disk 65,  48 Jun 15 07:33 sdt

brw-rw---- 1 root disk 65,  64 Jun 15 07:33 sdu

brw-rw---- 1 root disk 65,  80 Jun 15 07:33 sdv

brw-rw---- 1 root disk 65,  96 Jun 15 07:33 sdw

brw-rw---- 1 root disk 65, 112 Jun 15 07:33 sdx

brw-rw---- 1 root disk 65, 128 Jun 15 07:33 sdy

 

輸出配置內容加入到99-oracle-asmdevices.rules

cd /dev

ls -1 sd* | grep -v [0-90] | grep -v sda | cut -c 3-3|while read v_alpha 
do  
echo "KERNEL==\"sd*\", SUBSYSTEM==\"block\", PROGRAM==\"/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/\$name\", RESULT==\"`/lib/udev/scsi_id --whitelisted --replace-whitespace --device=/dev/sd$v_alpha`\", NAME=\"asm$v_alpha\", OWNER=\"grid\", GROUP=\"asmadmin\", MODE=\"0660\""  
done >>
/etc/udev/rules.d/99-oracle-asmdevices.rules  

同步到suse2

scp  /etc/udev/rules.d/99-oracle-asmdevices.rules suse2:/etc/udev/rules.d/

啟動udev

suse1:/dev # /etc/init.d/boot.udev stop

Stopping udevd:                                                                                                                                                       done

suse1:/dev # /etc/init.d/boot.udev start

Starting udevd:                                                                                                                                                       done

Loading drivers, configuring devices:

 

檢查asm device已在/dev/目錄下生成

suse1:/dev # ls -ld asm*

brw-rw---- 1 grid asmadmin  8,  16 Jun 15 16:54 asmb

brw-rw---- 1 grid asmadmin  8,  32 Jun 15 16:54 asmc

brw-rw---- 1 grid asmadmin  8,  48 Jun 15 16:54 asmd

brw-rw---- 1 grid asmadmin  8,  64 Jun 15 16:54 asme

brw-rw---- 1 grid asmadmin  8,  80 Jun 15 16:54 asmf

brw-rw---- 1 grid asmadmin  8,  96 Jun 15 16:54 asmg

brw-rw---- 1 grid asmadmin  8, 112 Jun 15 16:54 asmh

brw-rw---- 1 grid asmadmin  8, 128 Jun 15 16:54 asmi

brw-rw---- 1 grid asmadmin  8, 144 Jun 15 16:54 asmj

brw-rw---- 1 grid asmadmin  8, 160 Jun 15 16:54 asmk

brw-rw---- 1 grid asmadmin  8, 176 Jun 15 16:54 asml

brw-rw---- 1 grid asmadmin  8, 192 Jun 15 16:54 asmm

brw-rw---- 1 grid asmadmin  8, 208 Jun 15 16:54 asmn

brw-rw---- 1 grid asmadmin  8, 224 Jun 15 16:54 asmo

brw-rw---- 1 grid asmadmin  8, 240 Jun 15 16:54 asmp

brw-rw---- 1 grid asmadmin 65,   0 Jun 15 16:54 asmq

brw-rw---- 1 grid asmadmin 65,  16 Jun 15 16:54 asmr

brw-rw---- 1 grid asmadmin 65,  32 Jun 15 16:54 asms

brw-rw---- 1 grid asmadmin 65,  48 Jun 15 16:54 asmt

brw-rw---- 1 grid asmadmin 65,  64 Jun 15 16:54 asmu

brw-rw---- 1 grid asmadmin 65,  80 Jun 15 16:54 asmv

brw-rw---- 1 grid asmadmin 65,  96 Jun 15 16:54 asmw

brw-rw---- 1 grid asmadmin 65, 112 Jun 15 16:54 asmx

brw-rw---- 1 grid asmadmin 65, 128 Jun 15 16:54 asmy

 

第七部分:安裝配置GI

這部分大家都比較熟了,不作詳細解釋,只擷取關鍵步驟的截圖,圖8788899091929394

 

 

之後在按照提示執行root.sh的時候,出現了 USM driver install actions failed錯誤

suse1:~ # /oracle/app/11.2.0/grid/root.sh

Performing root user operation for Oracle 11g

 

The following environment variables are set as:

    ORACLE_OWNER= grid

    ORACLE_HOME=  /oracle/app/11.2.0/grid

 

Enter the full pathname of the local bin directory: [/usr/local/bin]:

The contents of "dbhome" have not changed. No need to overwrite.

The contents of "oraenv" have not changed. No need to overwrite.

The contents of "coraenv" have not changed. No need to overwrite.

 

Entries will be added to the /etc/oratab file as needed by

Database Configuration Assistant when a database is created

Finished running generic part of root script.

Now product-specific root actions will be performed.

Using configuration parameter file: /oracle/app/11.2.0/grid/crs/install/crsconfig_params

User ignored Prerequisites during installation

Installing Trace File Analyzer

USM driver install actions failed

/oracle/app/11.2.0/grid/perl/bin/perl -I/oracle/app/11.2.0/grid/perl/lib -I/oracle/app/11.2.0/grid/crs/install /oracle/app/11.2.0/grid/crs/install/rootcrs.pl execution failed

 

MOS上提供了p17475946_112040_Linux-x86-64.zip補丁解決該問題,先退出圖形安裝介面,安裝17475946補丁

 

---1、節點1執行opatch auto安裝17475946補丁

su - grid

$ORACLE_HOME/OPatch/ocm/bin/emocmrsp   <---生成OCM檔案預設是$HOME目錄下的grid.rsp

 

su - root

suse1:/oracle/media/17475946p # ls

17475946  README.html  README.txt  bundle.xml

 

suse1:/oracle/media/17475946p # cd ..

suse1:/oracle/media # /oracle/app/11.2.0/grid/OPatch/opatch auto /oracle/media/17475946p -och /oracle/app/11.2.0/grid -ocmrf /home/grid/ocm.rsp   <--改用-och,此選項用於CRS未啟動的情況

 

以下是安裝補丁期間的輸出

Executing /oracle/app/11.2.0/grid/perl/bin/perl /oracle/app/11.2.0/grid/OPatch/crs/patch11203.pl -patchdir /oracle/media -patchn 17475946p -och /oracle/app/11.2.0/grid -ocmrf /home/grid/ocm.rsp -paramfile /oracle/app/11.2.0/grid/crs/install/crsconfig_params

This is the main log file: /oracle/app/11.2.0/grid/cfgtoollogs/opatchauto2016-06-17_19-10-55.log

This file will show your detected configuration and all the steps that opatchauto attempted to do on your system:

/oracle/app/11.2.0/grid/cfgtoollogs/opatchauto2016-06-17_19-10-55.report.log

2016-06-17 19:10:55: Starting Clusterware Patch Setup

Using configuration parameter file: /oracle/app/11.2.0/grid/crs/install/crsconfig_params

/oracle/app/11.2.0/grid/bin/crsctl query crs activeversion ... failed rc=8 with message:

 Oracle Cluster Registry initialization failed accessing Oracle Cluster Registry device: PROC-26: Error while accessing the physical storage ORA-29701: unable to connect to Cluster Synchronization Service 

Stopping CRS...

Stopped CRS successfully

patch /oracle/media/17475946p/17475946  apply successful for home  /oracle/app/11.2.0/grid     <---表示17475946補丁安裝成功

Starting CRS...

Installing Trace File Analyzer

CRS-4123: Oracle High Availability Services has been started.

。。。中間隔了大約5分鐘

Oracle Grid Infrastructure stack start initiated but failed to complete at /oracle/app/11.2.0/grid/crs/install/crsconfig_lib.pm line 11814.

---安裝完成後使用opatch lsinventory能看到該補丁安裝成功

Interim patches (1) :

Patch  17475946     : applied on Fri Jun 17 19:15:51 CST 2016

Unique Patch ID:  18978376

Patch description:  "ACFS Interim patch for 17475946"

   Created on 29 May 2015, 06:35:10 hrs PST8PDT

   Bugs fixed:

     17475946

---2、節點2執行opatch auto安裝17475946補丁

過程及輸出同節點1

 

---3、由於之前配置CRS的過程中遇到了 USM driver install actions failed”報錯而半途中斷,這裡需要重新配置CRS

deconfig,清理掉上次殘留下的配置

 

節點1、節點2:分別執行deconfig.sh

su - root

/oracle/app/11.2.0/grid/crs/install/rootcrs.pl -deconfig -force -verbose

 

Successfully deconfigured Oracle clusterware stack on this node   <---出現這行表示Deinstall成功

 

節點1:重新執行config.sh

su - grid

cd $ORACLE_HOME/crs/config

./config.sh

 

再按照提示分別在node 1node 2執行

/oracle/app/11.2.0/grid/root.sh   <---命令輸出如下,這次沒有了"USM driver install actions failed"錯誤,說明17475946補丁確實生效了,但出現了下面這條的錯誤:

 

Creation of ASM spfile in disk group failed. Following error occured: ORA-29780: unable to connect to GPnP daemon [CLSGPNP_ERR]

上述錯誤MOS指出是由執行root.sh的使用者設定的GRID_HOME不正確引起的,果然我們看到root使用者的環境變數中存在ORA_CRS_HOMEORA_ASM_HOME兩個環境變數,這兩變數並非我們人為設定,其它還有ORACLE_SIDORACLE_BASEORACLE_HOME三個變數也不是我們所設定,猜測可能是因為我們在安裝OS時選擇了安裝oracle_server包所致

suse1:/etc # env | grep ORA

ORA_CRS_HOME=/opt/oracle/product/11gR1/crs

ORA_ASM_HOME=/opt/oracle/product/11gR1/asm

ORACLE_SID=orcl

ORACLE_BASE=/opt/oracle

ORACLE_HOME=/opt/oracle/product/11gR1/db

 

暫時沒找到這些環境變數放在那些個系統配置檔案裡,於是乾脆在node 1node 2兩節點的/root/.profile裡清空掉這些變數

unset ORA_CRS_HOME

unset ORA_ASM_HOME

unset ORACLE_SID

unset ORACLE_BASE

unset ORACLE_HOME

 

節點 1:完成上述調整後重新執行root.sh

su - root

/oracle/app/11.2.0/grid/root.sh

 

這回終於往下走了

 

。。。省略了部分內容

ASM created and started successfully.

Disk Group DATA mounted successfully.

clscfg: -install mode specified

Successfully accumulated necessary OCR keys.

Creating OCR keys for user 'root', privgrp 'root'..

Operation successful.

CRS-4256: Updating the profile

Successful addition of voting disk 5dcd311cc84b4fe8bfb70fc21cea2d34.

Successful addition of voting disk 076d2279e9ad4fe9bfaf2fcf2d944d20.

Successful addition of voting disk 0f97acb2b7ea4fb1bfc2965317c2a0f2.

Successfully replaced voting disk group with +DATA.

CRS-4256: Updating the profile

CRS-4266: Voting file(s) successfully replaced

##  STATE    File Universal Id                File Name Disk group

--  -----    -----------------                --------- ---------

 1. ONLINE   5dcd311cc84b4fe8bfb70fc21cea2d34 (/dev/asmb) [DATA]

 2. ONLINE   076d2279e9ad4fe9bfaf2fcf2d944d20 (/dev/asmc) [DATA]

 3. ONLINE   0f97acb2b7ea4fb1bfc2965317c2a0f2 (/dev/asmd) [DATA]

Located 3 voting disk(s).

CRS-2672: Attempting to start 'ora.asm' on 'suse1'

CRS-2676: Start of 'ora.asm' on 'suse1' succeeded

CRS-2672: Attempting to start 'ora.DATA.dg' on 'suse1'

CRS-2676: Start of 'ora.DATA.dg' on 'suse1' succeeded

Configure Oracle Grid Infrastructure for a Cluster ... succeeded

節點 2:同樣需要執行root.sh

su - root

/oracle/app/11.2.0/grid/root.sh

 

執行完後檢查Clusterware狀態正常,圖95

 

 

節點1:回到原圖形安裝介面繼續下面的步驟

96

 

 

97:忽略掉Oracle Cluster Verification UtiliyFailed,因為”suse-cluster-scan”名稱我們是通過本地hosts解析的沒有通過DNS所以驗證時報錯

 

 

第八部分:安裝DB與建庫

---安裝DB軟體

這裡也是把一些主要步驟的截圖提供出來,不一一列舉了,圖9899100101102103

 

 

 

在安裝DB軟體的過程中唯一需要注意的地方是:

oracle使用者下的環境變數ORA_NLS10要麼不要設定要麼設定為$GRID_HOME/nls/data,如果設定為$ORACLE_HOME/nls/data,則在進行到”Prerequisite Checks”階段時會遇到如下錯誤:

An internal error occurred within cluster verification framework

Unable to obtain network interface list from Oracle Clusterware PRCT-1011 : Failed to run "oifcfg". Detailed error: nullMOS文件1380183.1對此有記載。可以在DB安裝完之後恢復ORA_NLS10引數的設定

 

---建庫

這裡也是把一些主要步驟的截圖提供出來,不一一列舉了,圖104105106107108109110

 

 

 

 

 

 

 

 

 

 

 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/53956/viewspace-2120438/,如需轉載,請註明出處,否則將追究法律責任。

相關文章