RAC (Real Application Clusters) 架構複雜,涉及叢集軟體、共享儲存、網路多路徑、時間同步等多層面。網路文檔多講「怎麼做」,鮮少說「錯了怎麼辦」。本文彙整工程與培訓實戰踩過的坑,適用 AIX、Solaris、HP-UX、Linux 平台。
| # | 檢核項目 | 錯誤徵兆與說明 |
|---|---|---|
| 1 | 節點時間高度一致 | 時間偏移 >1 秒導致 CSSD/OCSSD 啟動失敗、投票盤心跳異常 |
| 2 | 公網卡勿用私有 IP 段 | 192.168.x.x / 10.x.x.x 用於公網會干擾 SCAN/Client 連線路由 |
| 3 | 公網路統一網卡介面 | 所有節點公網必須綁定同名介面 (如 eth0/bond0),否則 VIP 故障轉移失效 |
| 4 | 每節點配置 VIP,同子網 | VIP 必須與公網 IP 同一子網,否則 Client 連線重導向失敗 |
| 5 | Solaris 需為 VIP 指定預設閘道 | 缺閘道導致跨網段 Client 無法透過 VIP 存取 |
| 6 | 磁碟分區全節點可見 | 共享儲存 LUN 必須在所有節點呈現相同裝置路徑/權限,建議用 ASMLib/udev 綁定 |
| 7 | OCR/Vote 裝置權限正確 | 擁有者 grid:oinstall,權限 640;錯誤導致 root.sh 失敗、叢集無法啟動 |
| 8 | 主機名命名規範 | 僅允許小寫字母、數字、連字號 (-);嚴禁底線 (_) 與大寫,否則 CRS 註冊失敗 |
| 9 | 失敗必須完全清理重來 | 殘留 OCR/Vote/Cluster Registry 會干擾二次安裝,需執行 rootcrs.pl -delete 徹底清理 |
| 10 | ORACLE_HOME 階層分離 | Grid Infrastructure (GI) 與 Database Home 必須不同目錄;同目錄會導致版本衝突、OPatch 混亂 |
| 11 | 節點互信 (SSH/等價) | root 與 grid/oracle 用戶需免密碼 SSH;缺失導致 root.sh 遠程執行卡住 |
CLB_GOAL/RLB_GOAL、SCAN Listener 監聽正確端口PRVF-XXXX、CRS-XXXX),勿只看錯誤碼,必須追溯 Alert Log ($GRID_HOME/log/<node>/alert<node>.log) 與安裝日誌 (/tmp/OraInstall<timestamp>)。cluvfy (Cluster Verification Utility) 事前驗證:cluvfy stage -pre crsinst -n node1,node2 -verbose。