Oracle RAC(Real Application Clusters)是極高複雜度的叢集軟體。網路上雖文檔眾多,但多數只講「怎麼做」,鮮少說明「出錯怎麼查」。錯誤訊息往往模糊不清,導致除錯極度困難。本文彙整工程與培訓實戰中遇到的 11 大關鍵檢查點,適用 AIX、Solaris、HP-UX、Linux 平台。
192.168.x.x、10.x.x.x 僅供私有 interconnect 使用。公網必須用正式可路由 IP,否則 VIP 故障轉移、SCAN Listener 將異常。eth0、節點 2 用 eth1,Clusterware 將無法正確綁定 VIP。統一命名(如皆用 bond0 或 eth0)。defaultrouter,否則跨網段連線失敗。/dev 或多路徑裝置名稱必須一致且可見。建議用 ls -l /dev/oracleasm/disks/ 或 multipath -ll 驗證。chown grid:asmadmin /dev/oracleasm/disks/OCR*
chmod 660 /dev/oracleasm/disks/OCR*
chown grid:asmadmin /dev/oracleasm/disks/VOTE*
chmod 660 /dev/oracleasm/disks/VOTE*
錯誤權限是安裝失敗前三名原因。a-z、0-9、-。違反將導致 Clusterware 驗證失敗。rootcrs.pl -delete 或 crsctl delete cluster 完全清理,再重新開始。階段 1 安裝 Grid Infrastructure (Clusterware) → $GRID_HOME
階段 2 安裝 Oracle Database Software → $ORACLE_HOME (≠ GRID_HOME)
階段 3 建立資料庫
嚴禁 將 Grid 與 Database 安裝在同一目錄,也不可重複使用同一 ORACLE_HOME。grid 與 oracle 使用者需在所有節點間免密碼 SSH 登入。測試:ssh node2 date 無需密碼。/etc/hosts 需包含所有節點公網、私網、VIP 對應主機名。runInstaller 選 Install and Configure Grid Infrastructure for a ClusterorainstRoot.sh、root.shoracle 用戶執行 runInstaller/u01/app/oracle/product/19.0.0/dbhome_1)DBCA,選 Create DatabaseAL32UTF8,國家字元集 AL16UTF16| 錯誤代碼 | 常見原因 | 排查方向 |
|---|---|---|
| PRVF-0002 | 節點時間不同步 | 檢查 NTP、硬體時鐘 |
| PRVF-5430 | VIP 非公網子網 | 檢查 VIP IP/Netmask/Gateway |
| PRVF-5150 | 共享磁碟不可見或權限錯 | 檢查多路徑、ASM 磁碟權限、udev 規則 |
| PRVF-5636 | 主機名含非法字元 | 修正 /etc/hosts、hostname、DNS |
| PRVF-5637 | SSH 互信失敗 | 檢查 authorized_keys、權限 600、SELinux |
| INS-40910 | ORACLE_HOME 非空或權限錯 | 清理目錄、chown oracle:oinstall |