| 錯誤代碼 | 訊息 | 根因 | 解決步驟 |
|---|---|---|---|
| ORA-12541 | TNS: no listener | 監聽器未啟動或損壞 | 1. lsnrctl status 確認狀態2. lsnrctl start 或 Windows 服務啟動 OracleOraHomeXXTNSListener3. 若損壞:NetCA → Listener Configuration → 刪除重建 |
| ORA-12500 | TNS: listener failed to start dedicated server process | 資料庫實例服務未啟動 | Windows: net start OracleServiceSIDLinux: sqlplus / as sysdba → startup |
| ORA-12560 | TNS: protocol adapter error | 同 ORA-12500,或 ORACLE_SID 錯誤 | 檢查 set ORACLE_SID=正確SID,再啟動服務 |
ORADIM -DELETE -SID <SID名> -- 刪除服務項
ORADIM -NEW -SID <SID名> -- 重建服務項
-- 若報錯,重開機後再試
| 錯誤代碼 | 訊息 | 根因 | 解決步驟 |
|---|---|---|---|
| ORA-12154 | TNS: could not resolve the connect identifier specified | tnsnames.ora 設定錯誤、路徑不在 TNS_ADMIN、服務名拼寫錯誤 | 1. NetCA → Local Net Service Name Configuration → 重新設定 2. tnsping 服務名 驗證3. 檢查 sqlnet.ora 的 NAMES.DIRECTORY_PATH |
| 錯誤代碼 | 訊息 | 根因 | 解決步驟 |
|---|---|---|---|
| ORA-01034 | ORACLE not available | 實例啟動但資料庫未 MOUNT/OPEN | sqlplus / as sysdba → startup(或 startup mount → alter database open) |
oracle.exe、oradim.exe 所有進程。ora_startup.bat:@echo off
net start OracleServiceORCL
net start OracleOraHome10gTNSListener
sqlplus / as sysdba @startup.sql
-- startup.sql
startup
exit
tnsnames.ora、listener.ora 納入版控,變更留痕。ORACLE_SID 環境變數於用戶 Profile,避免手動設定出錯。