Vmware+RHEL5+Oracle 10G RAC安裝實驗--詳細過程(二)

接上一篇: Vmware+RHEL5+Oracle 10G RAC安裝實驗--詳細過程(一)

期間如果遇到文中沒有提及的問題建議就google吧,不要放棄!總有解決的辦法的!

五、配置第2臺節點rac2

關閉節點1,並退出虛擬機,爲了方便快捷,我們就不一一按配置第一臺節點那們操作了。直接將rac1目錄複製一份到rac2,然後修改.vmx文件中的配置即可創建第二臺節點rac2。

1、打開rac1安裝目錄,複製一份到rac2:

20GB的大小,複製還是需要一點時間的。

2、完成複製後,打開vmx文件把rac1更改爲rac2

更改完成保存關閉。

3、雙擊打開vmx文件,並啓動rac2節點,出現如下提示

選擇create ,ok

4、啓動rac2,進入系統修改相關配置:hostname,IP地址,hosts文件 等(注意以下操作是在rac2上操作,因其是從rac1複製過來的,所以顯示rac1,建議此時先不要啓動rac1)

修改hostname,把rac1改成rac2

修改IP地址,先ifconfig查看一下eth0與eth1的mac地址,並紀錄下來

修改etho的IP地址,192.168.0.21 爲192.168.0.22  ,並相應更改前面記錄下來的mac地址:HWaddr:00:0C:29:2E:36:90

修改eth1的IP地址,10.10.17.221 爲10.10.17.222  ,並相應更改前面記錄下來的mac地址:HWaddr:00:0C:29:2E:36:9A

修改hosts文件,把第一行裏的rac1更改爲rac2 如下:

5、修改oracle用戶下的環境變量,把ORACLE_SID =RACDB1 更改爲RACDB2:

[root@rac1 network-scripts]# vi /home/oracle/.bash_profile

上述全部更改完成後重啓rac2節點

六、配置clusterware安裝環境

   在clusterware (CRS) 和Rac Database 安裝過程中,Oracle Universal Installer (OUI) 必須能夠以oracle的身份自動將軟件複製到所有RAC 節點。這裏我們通過配置ssh 讓oracle 用戶擁有不輸入密碼即可訪問各節點的能力。


1、首先兩個節點間互ping,要確保都是通的
[root@rac1 ~]# ping 192.168.0.22
[root@rac1 ~]# ping 10.10.17.222
要建立用戶等效性,需要在兩個節點上以oracle 用戶身份生成用戶的公鑰和私鑰,首先在rac1 執行:

[root@rac1 opt]# su - oracle
[oracle@rac1 ~]$ mkdir ~/.ssh
[oracle@rac1 ~]$ chmod 700 ~/.ssh
[oracle@rac1 ~]$ ssh-keygen -t rsa

[oracle@rac1 ~]$ ssh-keygen -t dsa

然後在rac2上執行

[root@rac2 ~]# ping 192.168.0.21
[root@rac2 ~]# ping 10.10.17.221

[root@rac2 opt]# su - oracle
[oracle@rac2 ~]$ mkdir ~/.ssh
[oracle@rac2 ~]$ chmod 700 ~/.ssh
[oracle@rac2 ~]$ ssh-keygen -t rsa

[oracle@rac2 ~]$ ssh-keygen -t dsa

再切回rac1執行以下:

[oracle@rac1 ~]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[oracle@rac1 ~]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

再執行:

[oracle@rac1 ~]$ ssh rac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

[oracle@rac1 ~]$ ssh rac2 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

[oracle@rac1 ~]$ scp ~/.ssh/authorized_keys rac2:~/.ssh/authorized_keys

注以上命令會提示輸入rac2 oracle用戶的密碼,按照提示輸入即可,如果失敗可重新嘗試執行命令,執行過程如下:

兩機相互執行,看看是否還需要輸入密碼:

[oracle@rac1 ~]$ ssh rac1 date
[oracle@rac1 ~]$ ssh rac2 date
[oracle@rac1 ~]$ ssh rac1-priv date
[oracle@rac1 ~]$ ssh rac2-priv date
切換至node2 執行
[oracle@rac2 ~]$ ssh rac1 date
[oracle@rac2 ~]$ ssh rac2 date
[oracle@rac2 ~]$ ssh rac1-priv date
[oracle@rac2 ~]$ ssh rac2-priv date

執行過程如下:

 

注意:上述命令返回的信息,由於 rac對節點時間較敏感,因此如果此處顯示時間不一至,建議同步,具體方法可以google,關於rac時間同步問題。

    因是虛擬機環境,建議先安裝vmwaretool,實現虛擬機與真實主機時間同步,然後再通過ntp實現其中一節點與另一節點時間同步,可以參考這篇文章:http://mrxiong.blog.51cto.com/287318/708337

 

2、配置asm共享存儲:

注意:必須以root用戶身份執行

在rac1執行:

[root@rac1 ~]# /etc/init.d/oracleasm configure

分別輸入:oracle,dba,y,y

執行過程如下

提示:如果本步執行出錯(可能出錯機率最高的是在Scanning system for ASM),不妨將轉換一下命令行的執行方式,改成:
[root@rac1 ~]# sh /etc/init.d/oracleasm configure
有可能解決你的問題!

再轉到rac2執行:

[root@rac2 ~]# /etc/init.d/oracleasm configure

過程如下

再切換到rac1執行:

[root@rac1 ~]# /etc/init.d/oracleasm createdisk VOL1 /dev/sdd1

[root@rac1 ~]# /etc/init.d/oracleasm createdisk VOL1 /dev/sde1

執行過程如下

再執行如下:

[root@rac1 ~]# /etc/init.d/oracleasm scandisks

並查看一下當前的磁盤組:

[root@rac1 ~]# /etc/init.d/oracleasm listdisks

再切換到rac2執行:

[root@rac1 ~]# /etc/init.d/oracleasm scandisks

並查看一下當前的磁盤組:

[root@rac1 ~]# /etc/init.d/oracleasm listdisks

過程如下:

提示:如果在以上兩個節點查看當前的磁盤組都可以正常顯示VOL1,VOL2,那麼恭喜你,asm配置成功。

七、安裝Clusterware

注:以下操作如沒有特別說明,都以oracle用戶身份執行

安裝前還是先說說我遇到的問題吮吸,由於安裝Clusterware對節點時間同步比較敏感,所以在執行安裝前強烈建議進行時間同步。同時也遇到一個奇怪的問題,在安裝過程需已經對兩節點進行了時間同步,兩節點時間差在20s內,但在安裝到以下時彈出如下錯誤PRKC-1002:

這是對本人比較崩潰的錯誤,爲此還重裝過兩次系統。最後通過google得知,建議rac1節點設置比較rac2節點慢10分鐘來再進行安裝,好吧,那就試試,結果還是神奇的解決了,而且測試過幾時都是成功的。

好,以下開始安裝Clusterware軟件:

1、首先把需要安裝的clusterware軟件通過共享拷貝到rac1上,執行過程如下(注下述是以root用戶身份執行):

進行解壓如下:

2、cd到clusterware安裝軟件 的cluvfy工具下,進行安裝前的環境檢查:

出來的信息挺多的,具體不詳貼出來了,主要有以下異常信息:

還好有君三思的文檔支持,上述錯誤都可以忽略,是bug?

3、運行安裝命令,添加參數:-ignoreSysPrereqs,了RHEL5,並不被oracle10g 所支持,因此在執行安裝時需要指定-ignoreSysPrereqs 跳過安裝時的操作系統檢查。

4、感覺很好,出現安裝歡迎界面:

下一步

5、選擇安裝臨時文件夾

如果前面配置都正確的話,應該是出現上述界面 的

下一步
6、選擇安裝路徑,默認是db_1,這裏更改爲crs_1:

7、環境檢查,如提示操作系統什麼的,如下提示可以忽略,如果其他就要注意一下了:

選擇user verified

8、指定節點

 點擊add

下一步

9、設置網卡,這裏我們指定eth0 爲public 地址。

選中eth0,點擊Edit:

10、指定OCR 的存儲位置,ocr大概需要至少100M空間,所以之前設置的大小已經足夠了,測試環境就沒有選擇鏡像了。

11、voting disk的存儲位置

12、準備安裝了

13、開始安裝:

 再來一張:

14、這一步比較重要:

 就在這一步經歷過多次失敗,就差一點要放棄了!

還好,有君三思強大的文檔支持,以及無敵的google,總算是成功解決。廢話就少說了。

按上述提示在rac1、rac2上,使用root用戶登錄,並建議按下列順序執行:
在rac1 上執行:/opt/ora10g/oraInventory/orainstRoot.sh
在rac2 上執行:/opt/ora10g/oraInventory/orainstRoot.sh
在rac1 上執行:/opt/ora10g/product/10.2.0/crs_1/root.sh

執行完上述三個命令後,在rac2上執行以下時需注意(經過前幾次失敗及君三思文檔提示,還是先不要執行以下命令

在rac2 上執行:/opt/ora10g/product/10.2.0/crs_1/root.sh

跳過上述命令,先修改vipca 文件
[root@rac2 opt]# vi /opt/ora10g/product/10.2.0/crs_1/bin/vipca
找到如下內容:
Remove this workaround when the bug 3937317 is fixed
arch=`uname -m

if [ "$arch" = "i686" -o "$arch" = "ia64" ]
then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi
#End workaround
在fi 後新添加一行:
unset LD_ASSUME_KERNEL

再修改srvctl 文件
[root@rac2 opt]# vi /opt/ora10g/product/10.2.0/crs_1/bin/srvctl
找到如下內容:
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
同樣在其後新增加一行:
unset LD_ASSUME_KERNEL


保存退出,這時可以在rac2 執行root.sh 了

執行 /opt/ora10g/product/10.2.0/crs_1/root.sh 過程中還是會發現出現錯誤提示。

如果出現如上述錯誤,那麼接下來請繼續在rac2上執行以下操作:

又出現錯誤了,發覺該遇到的錯誤都給我遇上了。

解決辦法如下:

ok,執行完以上後,運行opt/ora10g/product/10.2.0/crs_1/bin/vipca

這次終於好了,next

默認,下一步

這裏需填寫vip的ip alias name,那就照填,只要填定一個正確,其它都會自動填上的

下一步

點擊finish

開始配置

完成後點擊ok即可

很順利了!exit

15、這時可以切回到rac1點擊彈出的提示了,點擊後會進行以下:

16、大功告成!一小步

17、如果前面配置環境檢查出錯
以root 身份執行$ORA_CRS_HOME/cfgtoollogs/configToolFailedCommands.sh
然後執行:
[root@rac1 ~]# /opt/ora10g/product/10.2.0/crs_1/bin/./crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora.rac1.gsd application ONLINE ONLINE rac1
ora.rac1.ons application ONLINE ONLINE rac1
ora.rac1.vip application ONLINE ONLINE rac1
ora.rac2.gsd application ONLINE ONLINE rac2
ora.rac2.ons application ONLINE ONLINE rac2
ora.rac2.vip application ONLINE ONLINE rac2
結果顯示正確就可以。
不報錯的話當然就不需要執行了,如果沒有錯誤你應該也找不到configToolFailedCommands.sh 文件。

好了,這一篇就到此爲止,接下來將進行database安裝,及數據庫創建等!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章