rman恢複案例——丟失所有的資料檔案
來源:互聯網
上載者:User
恢複|資料 1.1. 丟失所有的資料檔案
大前提,控制檔案和記錄檔沒有損壞。
1.1.1. 類比丟失所有的資料檔案
RMAN> shutdown abort;
Oracle 常式已關閉
RMAN> host;
Microsoft Windows XP [版本 5.1.2600]
(C) 著作權 1985-2001 Microsoft Corp.
C:\>del D:\oracle92\test1\*.dbf
C:\>exit
主機命令完成
RMAN>
1.1.2. Mount資料庫
RMAN> startup mount;
已串連到目標資料庫 (未啟動)
Oracle 常式已啟動
資料庫已載入
系統全域地區總計 101784276 位元組
Fixed Size 453332 位元組
Variable Size 75497472 位元組
Database Buffers 25165824 位元組
Redo Buffers 667648 位元組
RMAN>
1.1.3. 還原資料庫(restore)
RMAN> restore database;
啟動 restore 於 07-10月-04
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在開始恢複資料檔案備份組
通道 ORA_DISK_1: 正在指定從備份組恢複的資料檔案
正將資料檔案00002恢複到D:\ORACLE92\ORADATA\TEST1\UNDOTBS01.DBF
正將資料檔案00003恢複到D:\ORACLE92\ORADATA\TEST1\INDX01.DBF
正將資料檔案00004恢複到D:\ORACLE92\ORADATA\TEST1\USERS01.DBF
通道 ORA_DISK_1: 已恢複備份段 1
段 handle=D:\RMANTEST\FULL01G1V3R8_1_1 tag=HOT_DB_BK_LEVEL0 params=NULL
通道 ORA_DISK_1: 恢複完成
通道 ORA_DISK_1: 正在開始恢複資料檔案備份組
通道 ORA_DISK_1: 正在指定從備份組恢複的資料檔案
正將資料檔案00001恢複到D:\ORACLE92\ORADATA\TEST1 YSTEM01.DBF
通道 ORA_DISK_1: 已恢複備份段 1
段 handle=D:\RMANTEST\FULL02G1V3RO_2_1 tag=HOT_DB_BK_LEVEL0 params=NULL
通道 ORA_DISK_1: 恢複完成
完成 restore 於 07-10月-04
RMAN>
1.1.4. 恢複資料庫(recovery)
RMAN> recover database;
啟動 recover 於 07-10月-04
使用通道 ORA_DISK_1
正在開始介質的恢複
完成介質的恢複
完成 recover 於 07-10月-04
RMAN>
1.1.5. 開啟資料庫
RMAN> alter database open;
資料庫已開啟
RMAN>
1.2. 丟失全部的資料檔案,控制檔案和聯機記錄檔1.2.1. 類比丟失全部資料檔案,控制檔案,聯機記錄檔
RMAN> shutdown abort;
Oracle 常式已關閉
手工刪除失全部資料檔案,控制檔案,聯機記錄檔。
1.2.2. Nomount資料庫
RMAN> startup nomount;
已串連到目標資料庫 (未啟動)
Oracle 常式已啟動
系統全域地區總計 101784276 位元組
Fixed Size 453332 位元組
Variable Size 75497472 位元組
Database Buffers 25165824 位元組
Redo Buffers 667648 位元組
RMAN>
1.2.3. 還原控制檔案
RMAN> restore controlfile;
啟動 restore 於 07-10月-04
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=13 devtype=DISK
通道 ORA_DISK_1: 正在開始恢複資料檔案備份組
通道 ORA_DISK_1: 正在恢複控制檔案
輸出檔案名=D:\ORACLE92\ORADATA\TEST1\CONTROL01.CTL
通道 ORA_DISK_1: 已恢複備份段 1
段 handle=D:\RMANTEST\CTL538939298_S4_P1.CTL tag=TAG20041007T172138 params=NULL
通道 ORA_DISK_1: 恢複完成
正在複製控制檔案
輸出檔案名=D:\ORACLE92\ORADATA\TEST1\CONTROL01.CTL
輸出檔案名=D:\ORACLE92\ORADATA\TEST1\CONTROL02.CTL
輸出檔案名=D:\ORACLE92\ORADATA\TEST1\CONTROL03.CTL
完成 restore 於 07-10月-04
RMAN>
1.2.4. 還原所有的資料檔案
RMAN> restore database;
啟動 restore 於 07-10月-04
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在開始恢複資料檔案備份組
通道 ORA_DISK_1: 正在指定從備份組恢複的資料檔案
正將資料檔案00002恢複到D:\ORACLE92\ORADATA\TEST1\UNDOTBS01.DBF
正將資料檔案00003恢複到D:\ORACLE92\ORADATA\TEST1\INDX01.DBF
正將資料檔案00004恢複到D:\ORACLE92\ORADATA\TEST1\USERS01.DBF
通道 ORA_DISK_1: 已恢複備份段 1
段 handle=D:\RMANTEST\FULL01G1V3R8_1_1 tag=HOT_DB_BK_LEVEL0 params=NULL
通道 ORA_DISK_1: 恢複完成
通道 ORA_DISK_1: 正在開始恢複資料檔案備份組
通道 ORA_DISK_1: 正在指定從備份組恢複的資料檔案
正將資料檔案00001恢複到D:\ORACLE92\ORADATA\TEST1 YSTEM01.DBF
通道 ORA_DISK_1: 已恢複備份段 1
段 handle=D:\RMANTEST\FULL02G1V3RO_2_1 tag=HOT_DB_BK_LEVEL0 params=NULL
通道 ORA_DISK_1: 恢複完成
完成 restore 於 07-10月-04
RMAN>
1.2.5. Mount資料庫
RMAN> alter database mount;
資料庫已載入
RMAN>
1.2.6. 恢複資料庫(基於scn的恢複)
RMAN> recover database until scn 71028;
啟動 recover 於 07-10月-04
使用通道 ORA_DISK_1
正在開始介質的恢複
存檔日誌線程 1 序列 3 已作為檔案 D:\ORACLE92\ADMIN\TEST1\ARCH\ARC00003.ARCH 存在於磁碟上
存檔日誌線程 1 序列 4 已作為檔案 D:\ORACLE92\ADMIN\TEST1\ARCH\ARC00004.ARCH 存在於磁碟上
存檔記錄檔名 =D:\ORACLE92\ADMIN\TEST1\ARCH\ARC00003.ARCH 線程 =1 序列 =3
存檔記錄檔名 =D:\ORACLE92\ADMIN\TEST1\ARCH\ARC00004.ARCH 線程 =1 序列 =4
完成介質的恢複
完成 recover 於 07-10月-04
RMAN>
1.2.7. 使用Resetlogs 選項恢複資料庫
RMAN> alter database open resetlogs;
資料庫已開啟
在恢複目錄中註冊的資料庫的新實體化
正在啟動全部恢複目錄的 resync
完成全部 resync
RMAN>