D:\oracle) 完好無損,包含 oradata、admin、network 等關鍵子目錄。listener.ora/tnsnames.ora)。init.ora/spfile、所有 .dbf、.log、.ctl、orapw。oradata\ 目錄 (改名 _new)。oradata\ 複製回原路徑。sqlnet.ora 加入 SQLNET.AUTHENTICATION_SERVICES=(NTS) 解決 ORA-01031。OracleService、OracleTNSListener 。SQLPLUS / AS SYSDBA → STARTUP MOUNT → ALTER DATABASE OPEN。適用:同版本、同路徑、同 SID、單實例非 RAC/ASM 環境。
D:\oracle 改名 oracle_old。D:\oracle (同版本、同 SID)。D:\oracle 改名 oracle_new,oracle_old 改回 oracle (物理檔案還原完成)。oradim -delete -sid ,建議重開機。oradim -new -sid -startmode a -pfile "D:\Oracle\admin\\pfile\init.ora" 。SQLPLUS / AS SYSDBA → STARTUP。listener.ora 中 HOST 參數並重啟 Listener。init.ora / spfile 參數與原環境一致 (記憶體、路徑、進程數)。orapw 存在 (否則 orapwd 重建)。listener.ora、tnsnames.ora、sqlnet.ora 路徑與 HOST/IP 正確。oratab (Linux/Unix) 或註冊表 (Windows) 實例條目正確。alert_.log 無錯誤。| 現象 | 原因 | 對策 |
|---|---|---|
| ORA-01031 insufficient privileges | sqlnet.ora 缺 NTS 認證 | 加入 SQLNET.AUTHENTICATION_SERVICES=(NTS) |
| ORA-01103 database name 'X' in control file is not 'Y' | Control File 內 DB Name 與實例 SID 不符 | 確認 SID 一致;或用 CREATE CONTROLFILE 重建 |
| Listener 启动失败 TNS-12545 | 電腦名/IP 變更,listener.ora 未同步 | 修正 HOST 參數,重啟 Listener |
| Datafile header SCN mismatch | 備份檔案非一致性 (熱備份無歸檔) | 需應用歸檔日誌恢復一致性 |
方案一「備份新→覆蓋舊→開庫」最快 (10 分鐘內);方案二「重裝→物理還原→重建實例」最通用。核心鐵律:**安裝路徑、SID、版本三一致**,物理檔案即可直接複用。