services.msc → 停止所有 Oracle*、OraWeb*、OraClrAgnt* 服務crsctl stop crs (Grid Home)localconfig delete (移除 CSS)oracle -delete -asmsid +ASM (移除 ASM)| 路徑 | 刪除目標 |
|---|---|
| HKLM\SOFTWARE\ORACLE | 整個金鑰 (含所有 Home 子鍵) |
| HKLM\SYSTEM\CurrentControlSet\Services | Oracle*, OraWeb*, OraClrAgnt* |
| HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\Application | Oracle* |
| HKLM\SOFTWARE\ODBC\ODBCINST.INI | 除 Microsoft ODBC for Oracle 外含 Oracle 的金鑰 |
| HKCR (HKEY_CLASSES_ROOT) | Ora*, Oracle*, Orcl*, EnumOra* |
| HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MenuOrder\Start Menu\Programs | Oracle* |
Path、CLASSPATH 移除 Oracle 路徑C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Oracle*%ORACLE_BASE% (預設 C:\app\oracle、D:\Oracle)C:\Program Files\Oracle, C:\Program Files (x86)\OracleC:\Windows\ORACLE.INI, oradim*.INI, oraodbc.ini%TEMP%, %TMP% Oracle 暫存檔odbcad32.exe (32/64-bit) → 系統/使用者 DSN → 刪除 Oracle 開頭Oracle* → 清除記錄regedit 搜尋 "Oracle" 無結果 (排除非 Oracle 軟體)services.msc 無 Oracle 服務odbcad32 無 Oracle DSNecho %PATH% 無 Oracle 路徑ora*.dll, oci*.dll 僅剩系統共用項# 參考 116898 文章腳本,此處略
| 情況 | 處理 |
|---|---|
| DLL 刪除失敗 (被鎖定) | 重啟 → Process Explorer 找鎖定進程 → 解除鎖定 → 刪除 |
| 多版本共存,僅移除特定版本 | 僅刪除對應 Home 的註冊表子鍵 (含 Home 名稱後綴)、目錄、服務 |
| Grid Infrastructure (GI) 環境 | 先移除 DB Home,再用 Grid Home 的 deinstall.sh/bat 移除 GI |
| RAC 叢集 | 全節點執行上述步驟,最後執行 crsctl delete crs |