實例啟動與關閉
STARTUP 選項
| 選項 | 含義 |
| NOMOUNT | 僅啟動實例 (SGA + 進程),不掛載數據庫 |
| MOUNT | 啟動實例 + 掛載數據庫 (讀取控制文件),未打開 |
| OPEN | 啟動 + 掛載 + 打開數據庫 (正常服務狀態) |
| FORCE | 強制關閉再啟動 (異常恢復首選) |
| PFILE=path | 指定非默認參數文件 |
SHUTDOWN 選項
| 選項 | 行為 |
| NORMAL | 等待用戶斷開 → 檢查點 → 同步文件 → 關閉 (默認) |
| TRANSACTIONAL | 等待活動事務提交 → 斷開用戶 → 執行 NORMAL |
| IMMEDIATE | 取消當前 SQL → 回滾未提交事務 → 斷開用戶 → 執行 NORMAL |
| ABORT | 立即終止實例,不檢查點,不同步,啟動時需實例恢復 |
常用管理腳本速查
- 顯示 SGA:
SHOW SGA 或 SELECT * FROM V$SGA;
- 後台進程:
SELECT NAME FROM V$BGPROCESS WHERE PADDR != '00';
- 實例狀態:
SELECT STATUS FROM V$INSTANCE;
- 初始化參數:
SELECT * FROM V$PARAMETER;
- 物理文件:
SELECT * FROM V$CONTROLFILE; SELECT * FROM V$DATAFILE; SELECT * FROM V$LOGFILE;
- 核心數據字典:
ALL_OBJECTS, USER_OBJECTS, DBA_OBJECTS, USER_SOURCE, USER_SEGMENTS, USER_TAB_COLUMNS, USER_CONSTRAINTS, ALL_USERS
控制文件多鏡像創建
-- 1. 關閉數據庫
SHUTDOWN IMMEDIATE;
-- 2. OS 層複製控制文件到不同磁盤
cp $ORACLE_HOME/dbs/control01.ctl /disk2/control02.ctl
cp $ORACLE_HOME/dbs/control01.ctl /disk3/control03.ctl
-- 3. 修改參數文件
control_files = (/disk1/control01.ctl, /disk2/control02.ctl, /disk3/control03.ctl)
-- 4. 啟動掛載驗證
STARTUP MOUNT;
SELECT NAME FROM V$CONTROLFILE; -- 應顯示 3 路徑
控制文件記錄內容
- 數據庫名稱、創建時間戳。
- 所有數據文件/重做日志文件路徑與狀態。
- 表空間名稱、狀態。
- 當前日志序列號、檢查點 SCN、歸檔日志歷史。