標準啟動流程
$ sqlplus "sys/password as sysdba"
SQL> STARTUP
監聽器管理
# 啟動/停止/狀態檢查
$ lsnrctl start
$ lsnrctl stop
$ lsnrctl status
# 設定檔位置
$ORACLE_HOME/network/admin/listener.ora
監聽器設定包含協定/位址/埠號與實例註冊資訊。可用 Net Configuration Assistant 圖形化設定。
資料庫啟動三階段
- 啟動執行個體:讀取參數檔 → 配置 SGA → 啟動背景進程(PMON、SMON、DBWR、LGWR 等)。
- 掛載資料庫:讀取控制檔,建立執行個體與資料庫關聯,資料庫仍關閉。
- 開啟資料庫:開啟資料檔與線上重做日誌,允許正常存取。
啟動模式參數
| 模式 | 指令 | 說明 |
| NOMOUNT | STARTUP NOMOUNT | 僅啟動執行個體,建立資料庫/恢復控制檔時使用 |
| MOUNT | STARTUP MOUNT | 啟動並掛載,資料庫關閉,備份/維護適用 |
| READ ONLY | STARTUP MOUNT → ALTER DATABASE OPEN READ ONLY | 只讀模式,報表查詢適用 |
| READ WRITE | STARTUP MOUNT → ALTER DATABASE OPEN READ WRITE | 預設正常模式 |
| RESTRICT | STARTUP RESTRICT | 限制模式,僅具 RESTRICTED SESSION 權限者可連線 |
| PFILE 指定 | STARTUP PFILE=/path/to/init.ora | 指定參數檔啟動 |
| FORCE | STARTUP FORCE | 強制重啟(相當於 SHUTDOWN ABORT + STARTUP) |
關閉模式詳細比較
| 模式 | 指令 | 行為 | 適用場景 |
| NORMAL | SHUTDOWN NORMAL | 等待所有使用者主動斷線 | 計畫維護、無時間壓力 |
| IMMEDIATE | SHUTDOWN IMMEDIATE | 回滾未提交交易、中斷連線、關閉 | 最常用、標準關閉 |
| TRANSACTIONAL | SHUTDOWN TRANSACTIONAL | 等待進行中交易結束(提交/回滾) | 不想中斷長交易 |
| ABORT | SHUTDOWN ABORT | 立即終止執行個體,下次啟動需執行個體復原 | 緊急故障、其他模式失效 |
歸檔模式切換
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE ARCHIVELOG; -- 或 NOARCHIVELOG
ALTER DATABASE OPEN;
-- 或修改參數檔後重啟
log_archive_start = TRUE
操作建議
- 生產環境關閉首選
IMMEDIATE,避免 NORMAL 無限等待。
- 啟動前確認參數檔(SPFILE/PFILE)路徑正確。
- 重大維護前務必完成冷備份或確認備份策略有效。