2017年10月份接到一個負責淮安洪澤項目經理求助,說投標時候誤把oracle rac服務寫在標書里面,現在硬件設備網絡已經搭建完成,然后客戶要求安裝win2008下面搭建oracle rac,負責的項目經理傻眼了,沒有人會處理,於是通過層層關系聯系上我,我當時也是一頭霧水,問現場項目經理具體要求,他說不出一二,說按照我的想法來做。我也無語,我也是經過與業務開發公司了解部分內容,利用周末兩天完成搭建,以下把具體部署步驟分享出來。
第1章 引言
1.1 什么是 RAC
RAC 就是 real application clusters 的縮寫,跟 rack 的讀音同
Oracle Real Application Clusters (RAC)可以支持 24 x 7 有效的數據庫應用系
統,您可以在由低成本的服務器構成的高可用性系統上自由部署您的應用,而無需修改您的應用程序,使用 RAC 無需再為成本而犧牲性能和可靠性
1.2 RAC 關鍵特性
1.2.1 高可用性
Oracle Real Application Clusters 提供一個高性能低成本的應用平台,支持所
有類型的應用系統,無論是事務處理型應用還是分析型應用。所有應用共享同樣的服務器和存儲資源。出現任何的服務器或磁盤故障,系統會自動重新接管發生故障的功能。這些對前端用戶的完全透明的。同樣,如果您需要增加服務器或改變其他組件的配置也不會影響到應用系統
1.2.2 高性能
Oracle Real Application Clusters 保持着 TPC-C 的記錄,達到每分鍾 118 萬個事務的處理能力,在 3,000 GB 的 TPC-H 數據倉庫 Benchmark 測試中,Oracle RAC 同樣保持性價比的領先地位,保證我們的用戶能夠達到更好更快的 ROI
1.3 Oracle 11gR2 RAC 簡介
Oracle 11gR2 引入了很多新特性,Oracle 11g R2 將自動存儲管理 (ASM) 和
Oracle Clusterware 集成在 Oracle Grid Infrastructure 中。Oracle ASM 和 Oracle
1 / 57
Database 11gR2 提供了較以前版本更為增強的存儲解決方案,該解決方案能夠在 ASM 上存儲 Oracle Clusterware 文件,即 Oracle 集群注冊表 (OCR) 和表決文件(VF,又稱為表決磁盤)。這一特性使 ASM 能夠提供一個統一的存儲解決方案,無需使用第三方卷管理器或集群文件系統即可存儲集群件和數據庫的所有數據
Oracle 11gR2 中引入了 SCAN(single client access name),即簡單客戶端連接名,一個方便客戶端連接的接口;在 Oracle 11gR2 之前,client 鏈接數據庫的時候要用 vip,假如 cluster 有 4 個節點,那么客戶端的 tnsnames.ora 中就對應有四個主機 vip 的一個連接串,如果 cluster 增加了一個節點,那么對於每個連接數據庫的客戶端都需要修改這個 tnsnames.ora。SCAN 簡化了客戶端連接,客戶端連接的時候只需要知道這個名稱,並連接即可, 每個 SCAN VIP 對應一個 scan listener,cluster 內部的 service 在每個 scan listener 上都有注冊,scan listener 接受客戶端的請求,並轉發到不同的 Local listener 中去,由 local 的 listener 提供服務給客戶端
此外,安裝 GRID 的過程也簡化了很多,內核參數的設置可保證安裝的最低設置,直接使用 ASM 存儲
2 / 57
第2章 總體規划
2.1 服務器規划
1. 建議使用兩台硬件配置一模一樣的服務器來作為 RAC 環境的兩個物理節點
2. 服務器至少需要配置兩塊物理網卡
3. 服務器規划表:
| 節點 |
主機名 |
本地磁盤大小 |
操作系統 |
內存大小 |
虛擬內存大小 |
| 節點 1 |
RAC1 |
1.8T |
Windows_Server_2008_R2_X64 |
16G |
32~64G |
| 節點 2 |
RAC2 |
1.8T |
Windows_Server_2008_R2_X64 |
16G |
32~64G |
2.2 網絡規划
1. 網絡規划表:
| 節點名稱 |
公共 IP 地址 |
虛擬 IP 地址 |
心跳 IP 地址 |
SCAN 名稱 |
SCAN IP 地址 |
| RAC1 |
10.83.192.75 |
10.83.192.77 |
2.2.2.1 |
scan-cluster |
10.83.192.72 |
| RAC2 |
10.83.192.76 |
10.83.192.79 |
2.2.2.2 |
2. 其中虛擬 IP 地址和 SCAN IP 地址必須為能夠使用但未被其他設備配占用的地址,並且需要與公共 IP 地址在同一個網段
3. 公共 IP 地址和心跳 IP 地址需要設置在物理網卡上,並且需要將兩台服務器上配置心跳地址的網卡通過一根網線直接連接起來
2.3 存儲規划
1. 本次安裝環境默認存儲已經部署完成,並且操作系統已經能夠識別出來
2. 存儲共分配了 2000G 的空間,分成了 5 個磁盤,每個磁盤大小為 400G
3. 存儲規划表
| Logical Driver |
LUN |
SIZE |
對應服務器磁盤 |
作用 |
| ocr |
1 |
400G |
磁盤 1 |
表決磁盤,磁盤組名為 OCR |
| data1 |
2 |
400G |
磁盤 2 |
數據庫共享存儲區 |
| data2 |
3 |
400G |
磁盤 3 |
磁盤組名為 DATA |
| data3 |
4 |
400G |
磁盤 4 |
|
| fra |
5 |
400G |
磁盤 5 |
閃回配置區,磁盤組名為 FRA |
2.4 數據庫規划
2.4.1 軟件規划
| 軟件組件 |
操作系統用戶 |
軟件安裝目錄位置 |
| win64_11gR2_grid |
administrator |
D:\app\administrator D:\app\11.2.0\grid |
| win64_11gR2_database |
administrator |
D:\app\administrator D:\app\administrator\product\11.2.0\dbhome_1 |
2.4.2 數據庫配置
1. 各節點安裝數據庫配置表:
| 節點名稱 |
實例名稱 |
數據庫名稱 |
表決磁盤組名 |
數據庫共享存儲區磁盤組名 |
恢復區磁盤組名 |
| RAC1 |
ORCL1 |
ORCL |
名稱:OCR 大小:400G |
名稱:DATA 大小:1200G |
名稱:FRA 大小:400G |
| RAC2 |
ORCL2 |
2. grid 及 database 軟件的安裝操作全部都在 RAC1 服務器上進行,RAC2 服務
器上的軟件都是通過 RAC1 通過局域網共享來完成安裝
2.5 網絡拓撲規划
第3章 環境配置
3.1 操作系統配置
3.1.1 修改主機名、統一用戶名密碼
1. 分別更改兩台服務器的主機名為 RAC1 和 RAC2,需要重啟后生效
2. 兩台服務器統一使用 administrator 用戶,並且保持密碼一致
3.1.2 關閉防火牆、配置 DEP 和 UAC
1. 分別關閉服務器 RAC1 和 RAC2 的防火牆
2. 分別配置兩台服務器上的數據執行保護(DEP),選擇‘僅為基本 windows
程序和服務啟用’,需要重啟后才能生效(可配置完下一步后一起重啟)
3. 分別配置兩台服務器上的 UAC,需要重啟后生效
3.1.3 修改虛擬內存
1. 由於服務器的內存為 16G,按照 Oracle 的官方文檔,虛擬內存至少為實際內存的 2 倍,此處選擇在本地磁盤一個較大的空白分區(E 盤)中划分了虛擬內存,取值范圍:32G~64G,即初始值:32768MB,最大值:65536MB
2. 設置方法如下圖所示,需要重啟后生效
3.1.4 修改注冊表
1. 因為在網絡調試時,Windows 的“媒體感知”功能會檢測出本機和局域網設備沒有正常連通,接着可能就會禁用捆綁在網卡上的某些網絡協議,其中就包括 TCP/IP 協議。由於 TCP/IP 協議被禁用了,這樣該 TCP/IP 應用程序就無法進行調試了,因此需要禁用媒體感知功能
2. 設置方法:開始 → 運行 → regedit → HKEY_LOCAL_MACHINE →
SYSTEM → CurrentControlSet → Services → Tcpip → Parameters → 新建一個 DWORD 值,命名為 DisableDHCPMediaSense 值為 1,如下圖所示,需要重啟后生效
3.2 網絡配置
3.2.1 添加 IP 地址、修改網卡名
1. 按照網絡規划中的表格設置服務器網卡的 IP 地址,下面以 RAC1 服務器為
例,設置后截圖如下:
n 公共 IP 地址
n 私有 IP 地址(心跳地址)
2. 更改兩台服務器的兩個網卡名稱分別為 pub 和 pri,以區分公共 IP 地址和私有 IP 地址(心跳地址),更改后截圖如下:
3.2.2 修改網卡優先級
1. 修改兩台服務器網卡的優先級,將 pub 網卡的優先級設置高於 pri 網卡,以便查找網絡時優先查找公共 IP 地址,修改方法詳見下面幾步
2. 開啟菜單欄
3. 打開高級設置
4. 將 pub 位置調整到 pri 前面,並且將 IPV6 協議去掉(注意 pri 同樣需要修改),將 IPV4 協議調整到 IPV6 之前,更改后的截圖如下:
3.2.3 修改 hosts 文件
1. 修改兩台服務器的 hosts 文件,將需要設置的 IP 地址及相應的主機名添加進去,兩台服務器的 hosts 文件必須一致,
2. hosts 文件的路徑為:C:\WINDOWS\System32\drivers\etc\hosts,修改后的截圖如下:
注意:IP 地址與主機名之間不是空格,而是按 tab 鍵
3.2.4 測試網絡連通性
1. hosts 文件修改完成后可使用 ping 命令來驗證設置是否正確
2. 其中虛擬 IP 地址和 SCAN IP 地址此時是 ping 不通的,主要查看的是對應的 IP 是否正確
3.3 存儲配置
3.3.1 磁盤規划
1. 磁盤規划如下表所示:
| Logical Driver |
LUN |
SIZE |
對應服務器磁盤 |
作用 |
| ocr |
1 |
400G |
磁盤 1 |
表決磁盤,磁盤組名為 OCR |
| data1 |
2 |
400G |
磁盤 2 |
數據庫共享存儲區 |
| data2 |
3 |
400G |
磁盤 3 |
磁盤組名為 DATA |
| data3 |
4 |
400G |
磁盤 4 |
|
| fra |
5 |
400G |
磁盤 5 |
閃回配置區,磁盤組名為 FRA |
2. 需要檢查一下上表中的磁盤編號與 LUN 編號是否對應,如下圖所示:注意:
1) 這里不是說一定要磁盤 1 對 LUN1,LUN 編號也可能是從 0 開始算起,
那樣的話就是 LUN0 對磁盤 1
2) 一定要確保在 RAC1 和 RAC2 服務器上看到的編號對應都一致
3.3.2 磁盤初始化
1. 分別在 RAC1 和 RAC2 服務器上將所有磁盤設置成聯機狀態,如下圖所示:
2. 磁盤初始化操作在 RAC1 服務器上進行
3. 將 5 個磁盤全部新建簡單卷,注意不要分配盤符和格式化磁盤
1) 選擇磁盤 1,單擊右鍵選擇新建簡單卷,打開向導,點擊下一步
2) 按照默認設置,點擊下一步
3) 選擇‘不分配驅動器號或驅動器路徑’,點擊下一步
4) 選擇‘不要格式化這個卷’,點擊下一步
5) 點擊‘完成’即可結束向導
6) 其他 4 個磁盤均按上述操作完成簡單卷的建立,全部建完后的截圖如下:
7) 此時登錄到 RAC2 服務器,打開磁盤管理,選擇‘重新掃描磁盤’
8) 掃描完成后,磁盤格式已經自動變成 RAW,但是系統默認為每個磁盤增
加了驅動器號
9) 此時需要刪除磁盤 1 到磁盤 5 的驅動器號,選擇磁盤 1,單擊右鍵打開
‘更改驅動器號和路徑’
10) 選中驅動器號 H,單擊刪除
11) 確認刪除
12) 其他 4 個磁盤按照上述操作刪除各自的驅動器號,刪除完成后,RAC2 服務器的截圖如下:
4. 分別在 RAC1 和 RAC2 服務器上開啟‘自動裝載所有新卷’功能,下圖以
RAC1 服務器為例,RAC2 操作類似
3.3.3 裝載空白 NTFS 文件夾
1. 分別在 RAC1 和 RAC2 服務器上的 C 盤新建一個空文件夾,命名為 asm,然后在 asm 文件夾中再新建 5 個空文件夾,名稱分為 ocr、data1、data2,、data3、 fra
2. 分別將已經初始化的 5 個磁盤按順序掛載到上述空文件夾內,兩台服務器均
要做此操作,操作步驟:
1) 選擇磁盤 1,右鍵打開‘更改驅動器號和路徑’選項
2) 選擇裝載 ocr 文件夾
3) 選擇完成后截圖如下,點擊確認即可完成
4) 按照上述步驟裝載剩余的文件夾,注意對應順序,裝載完成后 asm 文件
夾內容顯示如下:
5) 在 RAC2 服務器上重復上述 4 歩操作,同樣需要注意裝載文件夾的順序
3.3.4 共享磁盤
1. 分別在 RAC1 和 RAC2 服務器上開啟 C 盤和 D 盤共享,並且將 everyone 權
限設置為完全控制,步驟如下:
1) 單擊右鍵選擇‘高級共享’
2) 將 everyone 用戶的權限選擇成完全控制
3) 將 D 盤也按照上述操作開啟共享,設置完成后截圖如下:
4) 在 RAC2 服務器上重復上述 3 歩操作
2. 重啟兩台服務器,在兩個節點重新掃描磁盤,確保磁盤 1~5 在 RAC1 和 RAC2 服務器上均可見,並確保任何一個分區均未分配驅動器號,如果出現驅動器號必須刪除
第4章 RAC 安裝
4.1 安裝前配置檢查
4.1.1 時間同步
1. 查看兩台服務器的 Server、Workstation 服務是否啟動,將其設為自動啟動
2. 在 RAC1 服務器上運行命令:net time \\rac1 (查看 RAC1 的當前時間)
3. 在 RAC2 服務器上運行命令:net time \\rac1 /set (設置 RAC2 時間與 RAC1 同
步)
4.1.2 共享互訪測試
1. 在 RAC1 服務器上運行命令:net use \\rac2\C$ 和 net use \\rac2\D$
2. 在 RAC2 服務器上運行命令:net use \\rac1\C$ 和 net use \\rac1\D$
4.1.3 數據庫軟件檢查
1. 拷貝需要安裝的軟件到 RAC1 服務器的 D 盤的 oraclesoft 文件夾中並解壓到當前目錄
2. 注意 win64_11gR2_database 由兩個壓縮文件組成,必須將兩個壓縮文件解壓到同一個目錄下,否則在安裝數據庫時會報錯
4.2 安裝 grid 集群軟件
1. 進入 grid 軟件目錄,雙擊 setup 開始執行安裝程序,此處選擇‘安裝和配置集群的網絡基礎結構’
2. 選擇‘高級安裝’
3. 選擇安裝語言
4. 填寫集群名稱和 SCAN 名稱,必須填寫 hosts 文件中 SCAN IP 對應的主機名
5. 添加 rac2 節點
6. rac2 節點添加完成后截圖
7. 更改網絡接口類型,默認選項如果不對,需要手動更改
8. 此處選擇‘自動存儲管理(ASM)’
9. 點擊‘標記磁盤’按鈕,來添加 ASM 磁盤
10. 在此界面可以看到之前已經初始化好的 5 塊磁盤,因為此處設置的是 OCR
磁盤組,根據存儲規划,需要選擇第一塊磁盤,並且標記為 OCR
11. 查看磁盤情況
12. 完場添加
13. 選中剛添加的磁盤
14. 添加 ASM 口令
15. 由於設置的密碼不符合標准,需要確認來強制使用
16. 此處選擇‘不使用 IPMI’
17. 選擇軟件相關目錄,根據規划要求,此處選擇 D 盤
18. 先決條件檢查
19. 如果檢查通過,則出現概要,如果提示失敗,會有相應的提示,請根據提示
檢查上一章節中的設置是否存在問題
20. 開始安裝后,會在下圖中紅框標注的位置(網格基礎結構配置)停頓約 20 分鍾,此處也是 grid 安裝成功與否的關鍵所在,如果此處出現問題,則需要卸載 grid,並檢查之前所有的設置,然后再次嘗試安裝,直到顯示成功為止
21. 安裝完成截圖
4.3 clusterware 安裝校驗
grid 安裝完成后,如果安裝成功,可在 dos 環境下通過 crs_stat –t –v 命令查看集群啟動了哪些服務:
4.4 安裝 database 數據庫軟件
1. 進入 database 目錄,雙擊 setup 開始安裝 database 數據庫軟件,此處去掉‘接收安全更新’選項
2. 確認跳過‘指定電子郵件地址’
3. 選擇‘僅安裝數據庫軟件’
4. 查看節點名稱
5. 選擇安裝語言
6. 選擇安裝企業版,並且勾選所有組建
7. 選擇安裝路徑為 D 盤
8. 先決條件檢查
9. 安裝概要
10. 安裝到此處時,執行遠程安裝 RAC2 節點的數據庫,此時等待時間會很長,請耐心等待
11. 安裝結束時會提示到 RAC2 節點上執行 selecthome.bat 腳本,用於在 RAC2
節點上激活 Oracle 相關的產品
12. RAC2 節點上 selecthome.bat 腳本的位置如下圖所示,雙擊執行后會彈出一個 dos 窗口,執行時間很短
4.5 創建 ASM 磁盤組
1. 運行中輸入 asmca 命令,打開 ASM 配置界面,執行命令后需要等待 10 秒鍾
才能彈出配置界面
2.
在磁盤組選項卡中點擊新建
3. 單擊‘在磁盤上加載標記’
4. 選擇添加磁盤
5. 根據存儲規划,選擇磁盤 2 到磁盤 4 為數據文件磁盤,並標記成 DATA
6. 查看選擇的磁盤,並完場添加
7. 勾選添加的磁盤,命名磁盤組名稱為 DATA
8. 創建磁盤組過程
9. DATA 磁盤組創建成功
10. 按照相同的方法創建 FRA 磁盤組
11. 全部添加完成后,會看到之前規划的三個磁盤組,確認無誤后,退出即可完場磁盤組的添加
4.6 使用 DBCA 創建數據庫
1. 在運行中輸入 dbca 命令,開始創建數據庫
2. 選擇創建‘RAC 集群數據庫’
3. 選擇‘創建數據庫’
4. 數據庫模板選擇‘一般用途和事物處理’
5. 填寫數據庫名稱和實例名稱為 orcl,將 rac1 和 rac2 兩個節點全部選中
6. 安裝人選項即可
7. 設置管理員用戶口令
8. 選擇數據區路徑為:+DATA,即 DATA 磁盤組
9. 輸入之前設置的 ASM 口令
10. 指定快速恢復區的路徑(即 FRA 磁盤組)和大小,恢復區大小不超過 FRA
磁盤組大小即可
11. 勾選‘示例方案’
12. 設置內存管理方式、字符集、連接模式等,按照默認設置即可
13. 數據庫存儲概要
14. 勾選‘創建數據庫’
15. 創建數據庫概要,從概要中可以看到數據庫名、實例名等相關信息
16. 開始安裝數據庫
17. 安裝成功截圖
4.7 RAC 服務
4.7.1 RAC1 節點服務
4.7.2 RAC2 節點服務
雲無止境在這個項目遇到坑,一開始選擇數據庫版本11.2.0.1,后面裝的時候一直不 成功,后來換11.2.0.4就可以了。所以遇到這樣項目時候一定要選擇11.2.0.4.



















