安裝Oracle 9i出現"加載數據庫時出錯:areasQueries錯誤",提示停止該組件或所有組件安裝,之後安裝不能進行。
嘗試Metalink搜索、重啟安裝、檢查權限均無效,耗時半天無果。
ouisrcs.lst 暴露真相文件位置:Program Files\Oracle\Inventory\ouisrcs.lst
文件內容:
SourceConfigs
StagingAreas
StgAreaURL="D:\Oracle\Windows\Oracle9201\Disk1\stage\products.jar"
StgAreaURL="D:\Oracle\???\Windows\Oracle9201\Disk1\stage\products.jar"
StgAreaURL="D:\Oracle\???\Oracle9i\disk1\stage\products.jar"
/StagingAreas
煙槍: ??? 對應安裝路徑中的中文目錄 「安裝」 兩字(D:\oracle\安裝\oracle9i\disk1)。Oracle安裝程序無法正確解析非ASCII路徑,導致Stage區域定位失敗。
D:\oracle\安裝\oracle9i\disk1 → D:\oracle\oracle9i\disk1;| 技術層面 | 影響機制 |
|---|---|
| JRE字符集處理 | Oracle 9i安裝器基於JDK 1.3/1.4,默認字符集與OS ANSI代碼頁綁定,中文路徑在Unicode↔GBK轉換中易出現數據丟失 |
| Stage區域解析 | products.jar索引文件解析路徑時,非ASCII字符導致FileInputStream打開失敗 |
| Inventory註冊 | Central Inventory寫入路徑含亂碼,後續組件無法定位Stage資源 |
| 本地化測試缺失 | 早期版本測試矩陣主要覆蓋英文路徑,非英語環境屬於「未認證配置」 |
# 強制規範
1. 僅使用 ASCII 字符:[a-zA-Z0-9_-.]
2. 禁止:中文、空格、特殊符號(& @ # $ % ^ * ( ) = + [ ] { } | \ ; : ' " , < > ? /)
3. 推薦模式:D:\oracle\product\19.3.0\dbhome_1
- 盤符: 固定盤符
- 廠商: oracle
- 類型: product / client / middleware
- 版本: 三段式版本號
- 實例標識: dbhome_1 / client_1 / wls_1
4. 環境變量對齊:ORACLE_HOME、ORACLE_BASE、PATH 均遵循此規範
echo %ORACLE_HOME% 無中文/空格;%TEMP%/%TMP%)無中文/空格;Program Files\Oracle\Inventory)無中文/空格。「中文路徑導致Oracle安裝失敗」是經典的「已知問題、反覆踩坑、極易忽視」類缺陷。建議將純ASCII路徑規範納入基礎設施交付標準,在環境準備階段自動化校驗(腳本掃描關鍵路徑),從源頭消除此類低級故障,避免寶貴工程師時間浪費在「亂碼偵探」遊戲中。