SHUTDOWN [NORMAL | IMMEDIATE | ABORT]
| 模式 | 等待使用者斷線 | 回滾未提交交易 | 執行 Checkpoint | 下次啟動恢復 | 適用場景 |
|---|---|---|---|---|---|
| NORMAL | 是(無限等待) | 是 | 是 | 不需要(乾淨) | 計畫維護、無緊迫性 |
| IMMEDIATE | 否(強制斷線) | 是 | 是 | 需要(Instance Recovery,自動) | 緊急維護、參數修改需重啟、應用部署 |
| ABORT | 否(直接終止程序) | 否 | 否 | 需要(Instance Recovery,較久) | 系統掛死、停電前緊急、其他模式失效 |
-- 正常關閉
SQL> SHUTDOWN NORMAL;
Database closed.
Database dismounted.
ORACLE instance shut down.
-- 緊急關閉(最常用)
SQL> SHUTDOWN IMMEDIATE;
Database closed.
Database dismounted.
ORACLE instance shut down.
-- 異常關閉(最後手段)
SQL> SHUTDOWN ABORT;
ORACLE instance shut down.
ALTER SYSTEM KILL SESSION 先清理。kill -9 背景程序,SGA 直接釋放,資料檔可能處於不一致狀態。下次啟動需完整 Instance Recovery(讀取所有 Redo),耗時較長,且若 Redo 受損風險極高。ARCHIVE LOG LIST 確認歸檔狀態,避免遺漏歸檔導致備份缺口。
理解三種關閉模式的內部機制與恢復成本,能讓 DBA 在壓力下做出正確決策。IMMEDIATE 是生產環境 90% 場景的最佳選擇,ABORT 僅留給不可控的極端情況。