首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

Oracle 錯誤代碼速查手冊 (ORA-00000 至 ORA-01303)

     編輯:Oracle 資料庫相關知識

使用說明

  • 本表收錄常見 Oracle 錯誤代碼 (ORA-00000 ~ ORA-01303),涵蓋會話、鎖、資料檔、控制檔、重做日誌、交易、網路、內部錯誤等核心領域。
  • 實際排查時,請結合 alert.log、Trace 檔、完整錯誤堆疊上下文判斷根因。
  • 部分錯誤為內部錯誤 (ORA-00600/00601/00603/00604/00606/00607) 需聯繫 Oracle Support 並提供完整 Incident Package。

高頻錯誤分類速查

會話與程序管理 (ORA-00000 ~ ORA-00099)

代碼訊息常見原因/處置
ORA-00001唯一約束違反主鍵/唯一鍵重複,檢查業務邏輯或序列
ORA-00018超過最大會話數調大 PROCESSES/SESSIONS 參數
ORA-00020超過最大程序數同上
ORA-00028您的會話已被終止DBA 執行 ALTER SYSTEM KILL SESSION
ORA-00054資源忙碌,指定 NOWAIT鎖衝突,檢查阻塞 Session 或加 NOWAIT/WAIT n
ORA-00060死鎖偵測應用邏輯循環等待,需調整存取順序
ORA-00099等待資源逾時,可能 PDML 死鎖平行 DML 死鎖,檢查並行度與資源分配

SQL 語法與語義錯誤 (ORA-00900 ~ ORA-00999)

代碼訊息常見原因
ORA-00900無效 SQL 陳述式語法錯誤、保留字誤用、版本不支援語法
ORA-00903資料表名稱無效拼寫錯誤、權限不足、同義詞失效
ORA-00904無效識別字欄位名錯誤、別名未加雙引號、大小寫敏感
ORA-00905缺少關鍵字語法不完整
ORA-00907缺少右括號括號不匹配
ORA-00911無效字元特殊字元、全形字元混入
ORA-00918欄位定義不明確多表連接同名欄位未加前綴
ORA-00923未找到 FROM 關鍵字SELECT 清單語法錯誤
ORA-00933SQL 指令未正確結束分號位置、子查詢括號、ORDER BY 位置
ORA-00936缺少運算式SELECT 清單為空或逗號殘留
ORA-00942資料表或視圖不存在拼寫、Schema 前綴、權限、同義詞
ORA-00955名稱已被現有物件使用重複建立表/索引/約束/同義詞
ORA-00972識別字過長超過 30 字元 (12.2 前) / 128 字元 (12.2+)
ORA-00979非 GROUP BY 運算式SELECT 含非彙總非分組欄位
ORA-00984此處不允許欄位VALUES 子句中使用欄位參考
ORA-00997非法使用 LONG 型別WHERE/GROUP BY/索引中引用 LONG

連線與認證 (ORA-01000 ~ ORA-01099)

代碼訊息處置
ORA-01000超過最大開啟游標數調大 OPEN_CURSORS、檢查應用未關閉游標洩漏
ORA-01001無效游標游標已關閉/未開啟即操作
ORA-01012未登入Session 已斷開,重新連線
ORA-01013使用者取消操作Ctrl+C 或客戶端逾時
ORA-01017無效用戶名/密碼認證失敗,檢查大小寫、密碼檔、Profile
ORA-01031權限不足缺乏系統/物件權限,DBA 授權
ORA-01033Oracle 初始化/關閉中等待資料庫啟動完成
ORA-01034Oracle 不可用Instance 未啟動,STARTUP
ORA-01035僅限 RESTRICTED SESSION資料庫處於受限模式
ORA-01090關閉進行中,不允許連線等待 SHUTDOWN 完成

資料檔與控制檔 (ORA-01100 ~ ORA-01299)

代碼訊息關鍵點
ORA-01102無法以獨佔模式掛載另一 Instance 已掛載,檢查叢集/鎖
ORA-01109資料庫未打開ALTER DATABASE OPEN
ORA-01113檔案需要媒體恢復離線備份/恢復流程中斷,需 RECOVER
ORA-01114寫入檔案 I/O 錯誤磁碟故障、權限、空間不足
ORA-01115讀取檔案 I/O 錯誤同上
ORA-01119建立資料庫檔案失敗路徑不存在、權限、ASM 磁碟組空間
ORA-01122資料庫檔案驗證失敗檔案損壞、非 Oracle 檔案、版本不符
ORA-01157無法識別/鎖定資料檔檢查 DBWR Trace、檔案系統掛載
ORA-01172線程恢復停止需更早的重做日誌
ORA-01190控制檔/資料檔來自 RESETLOGS 前不完整恢復後需 OPEN RESETLOGS
ORA-01200實際檔案大小小於正確大小檔案被截斷/損壞
ORA-01244未命名資料檔由媒體恢復新增需 ALTER DATABASE RENAME FILE

重做日誌與歸檔 (ORA-00250 ~ ORA-00399)

代碼訊息處置
ORA-00257歸檔器錯誤,僅限內部連線歸檔目的地空間滿、權限、網路;清理空間或調整參數
ORA-00265需執行個體恢復,無法設 ARCHIVELOG先 RECOVER 再切模式
ORA-00313無法開啟日誌組成員成員遺失/損壞,ALTER DATABASE CLEAR LOGFILE
ORA-00338日誌比控制檔新控制檔備份過舊,需重建控制檔
ORA-00353日誌損壞需不完整恢復 + RESETLOGS
ORA-00376此時無法讀取檔案檔案離線/恢復中

參數與相容性 (ORA-00400 ~ ORA-00499)

代碼訊息
ORA-00406COMPATIBLE 參數需為 X 或更大
ORA-00439功能未啟用
ORA-00443背景程序未啟動
ORA-00447背景程序致命錯誤
ORA-00471DBWR 程序終止
ORA-00472PMON 程序終止
ORA-00473ARCH 程序終止
ORA-00474SMON 程序終止
ORA-00484LMS 程序終止 (RAC)

內部錯誤 (需聯繫 Oracle Support)

代碼說明
ORA-00600內部錯誤,帶參數 [args...],必須上傳 Incident Package
ORA-00601清除鎖衝突
ORA-00603Server Session 致命錯誤終止
ORA-00604遞迴 SQL 層發生錯誤 (查看後續具體錯誤)
ORA-00606內部錯誤代碼
ORA-00607變更資料區塊時內部錯誤
ORA-00704Bootstrap 程序失敗 (啟動階段)

LogMiner 相關 (ORA-01280 ~ ORA-01303)

代碼訊息
ORA-01280嚴重 LogMiner 錯誤
ORA-01281指定 SCN 範圍無效
ORA-01282指定日期範圍無效
ORA-01283指定選項無效
ORA-01291遺失日誌檔案
ORA-01293時間/SCN 範圍未完全包含於列出日誌
ORA-01294字典檔案資訊處理錯誤,可能損壞
ORA-01295字典與日誌 DB_ID 不匹配
ORA-01296字符集不匹配
ORA-01297重做版本不匹配
ORA-01298字典與最早日誌 SCN 不相容
ORA-01299字典對應不同資料庫原型
ORA-01300啟用線程位向量不匹配
ORA-01301dbms_logmnr.USE_COLMAP 僅用於有效字典
ORA-01302logmnr.opt 語法錯誤
ORA-01303logmnr.opt 指定 Schema 不存在

快速排查清單

  1. 記錄完整錯誤代碼、訊息、時間、SQL 文本、Session 資訊。
  2. 檢查 alert_.log 同時間段記錄。
  3. 若為 ORA-00600/00603/00604/00607/00704/00447 等嚴重內部錯誤,使用 ADRCI 打包 Incident (`IPS PACK INCIDENT IN `) 並開 SR。
  4. 常見類別對應處置:
    • 空間滿 → 清理/擴充 (ORA-00257, ORA-01119, ORA-0165x)
    • 鎖/死鎖 → 找阻塞頭、調整應用邏輯 (ORA-00054, ORA-00060)
    • 權限 → DBA 授權 (ORA-01031)
    • 語法 → 開發修正 (ORA-009xx)
    • 恢復/日誌 → 依標準恢復流程 (ORA-01113, ORA-003xx)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved