[原創] 重灌OS,ORACLEL軟體, 巧用RMAN恢復資料

yxyup發表於2008-08-22
OS和oracle軟體以及所有的datafile,redologfile,controlfile所在的磁碟突然全損壞,幸好還有rman的全備,所以只好重安裝OS,ORACLE軟體,然進行恢復.
 
1.用RMAN啟動到nomount
RMAN> startup nomount;
已連線到目標資料庫 (未啟動)
Oracle 例程已啟動
系統全域性區域總計     135338868 位元組
Fixed Size                      453492 位元組
Variable Size                109051904 位元組
Database Buffers              25165824 位元組
Redo Buffers                    667648 位元組
2.恢復controlfile
RMAN> restore controlfile from 'd:\orabak\C-142338310-20060814-06';
啟動 restore 於 17-8月 -06
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=11 devtype=DISK
通道 ORA_DISK_1: 正在恢復控制檔案
通道 ORA_DISK_1: 恢復完成
正在複製控制檔案
輸出檔名=D:\ORACLE\ORADATA\HUNTER\CONTROL01.CTL
輸出檔名=D:\ORACLE\ORADATA\HUNTER\CONTROL02.CTL
輸出檔名=D:\ORACLE\ORADATA\HUNTER\CONTROL03.CTL
完成 restore 於 17-8月 -06
RMAN> sql 'alter database mount';
sql 語句: alter database mount
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of sql command on default channel at 08/17/2006 11:24:40
RMAN-11003: failure during parse/execution of SQL statement: alter database mount
ORA-01991: 無效的口令檔案'D:\oracle\ora92\DATABASE\PWDhunter.ORA'
3.重創password file
C:\>orapwd file=D:\oracle\ora92\DATABASE\PWDhunter.ORA password=hunter0
4.檢視備份並用RMAN恢復
RMAN> list backup;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of list command at 08/17/2006 11:26:12
RMAN-06189: current DBID 149324621 does not match target mounted database (14233
8310)
RMAN> set dbid=142338310;
正在執行命令: SET DBID
RMAN> restore database ;
啟動 restore 於 17-8月 -06
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在開始恢復資料檔案備份集
通道 ORA_DISK_1: 正在指定從備份集恢復的資料檔案
正將資料檔案00001恢復到D:\ORACLE\ORADATA\HUNTER\SYSTEM01.DBF
正將資料檔案00002恢復到D:\ORACLE\ORADATA\HUNTER\UNDOTBS01.DBF
正將資料檔案00004恢復到D:\ORACLE\ORADATA\HUNTER\DRSYS01.DBF
正將資料檔案00005恢復到D:\ORACLE\ORADATA\HUNTER\EXAMPLE01.DBF
正將資料檔案00006恢復到D:\ORACLE\ORADATA\HUNTER\INDX01.DBF
正將資料檔案00008恢復到D:\ORACLE\ORADATA\HUNTER\TEST04.DBF
正將資料檔案00009恢復到D:\ORACLE\ORADATA\HUNTER\USERS01.DBF
正將資料檔案00010恢復到D:\ORACLE\ORADATA\HUNTER\XDB01.DBF
正將資料檔案00011恢復到D:\ORACLE\ORADATA\HUNTER\RMAN_TS.DBF
通道 ORA_DISK_1: 已恢復備份段 1
段 handle=D:\ORABAK\FULL_DB_13_1HHQNJNN_1_1.BAK tag=TAG20060814T152959 params=NULL
通道 ORA_DISK_1: 恢復完成
完成 restore 於 17-8月 -06
RMAN> recover database;
啟動 recover 於 17-8月 -06
使用通道 ORA_DISK_1
正在開始介質的恢復
無法找到存檔日誌
存檔日誌執行緒 =1 序列=21
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 08/17/2006 12:04:50
RMAN-06054: media recovery requesting unknown log: thread 1 scn 3280421
由於歸檔和線上日誌檔案丟失,所以無法recover,只能resetlogs open開啟
SQL> alter database open resetlogs;
資料庫已更改。
SQL>

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7364032/viewspace-433013/,如需轉載,請註明出處,否則將追究法律責任。

相關文章