SYSTEM 表空間存放資料字典,媒體故障時:
RMAN> HOST RM $ORACLE_BASE/product/10.2.0/oradatabak/system01.dbf
RMAN> STARTUP
-- 報錯 ORA-01157/ORA-01110: data file 1 not found
RUN {
STARTUP FORCE MOUNT;
RESTORE DATAFILE 1;
RECOVER DATAFILE 1;
SQL 'ALTER DATABASE OPEN';
}
流程:強制啟動至 MOUNT → 從備份還原 Datafile 1 → 應用歸檔日誌恢復 → 開啟資料庫。
RUN {
STARTUP FORCE MOUNT;
SET NEWNAME FOR DATAFILE 1 TO '/oracle/10g/oradata/oralife/system01.dbf';
RESTORE DATAFILE 1;
SWITCH DATAFILE 1; -- 更新控制檔中資料檔路徑
RECOVER DATAFILE 1;
SQL 'ALTER DATABASE OPEN';
}
| 指令 | 用途 |
|---|---|
| SET NEWNAME | 指定還原目標新路徑(不修改控制檔) |
| RESTORE | 從備份集還原資料檔至 NEWNAME 路徑 |
| SWITCH DATAFILE | 將控制檔中該資料檔指標指向新路徑(相當於 ALTER DATABASE RENAME FILE) |
| RECOVER | 應用 Redo/Archive Log 使資料一致 |
SELECT FILE#, NAME FROM V$DATAFILE WHERE FILE# = 1;
SELECT FILE#, ERROR FROM V$RECOVER_FILE;
RESTORE DATAFILE nSET NEWNAME → RESTORE → SWITCH → RECOVER 四步驟不可省略