RMAN實戰系列之二:用RMAN實現災難恢復
rman實驗(2)。
本文可以任意轉載,轉載時請務必以超連結形式標明文章原始出處和作者資訊及本宣告
http://blog.itpub.net/post/11/2315
OS:windows 2000
DB:ORACLE 9.0.1
ORACLE_BASE:d:oracle
1. 以下示例在丟失目標資料庫資料檔案、恢復目錄、所有控制檔案、所有線上重做日誌檔案和所有引數檔案的情況下恢復資料庫。災難恢復最小需要某些資料檔案的備份、歸檔日誌和至少一個控制檔案的自動備份。
2. 啟動rman,連線到目標資料庫、恢復目錄上,設定控制檔案自動備份,做資料庫的全備份。
c:>rman target sys/oracle@to911newdb rcvcat rman/rman@catalog
連線到目標資料庫: HYB (DBID=3456381404)
連線到恢復目錄資料庫
Rman>configure controlfile autobackup on;
Rman>backup database plus archivelog;
3. 關閉資料庫,刪除所有的資料檔案、控制檔案和日誌檔案,不連線恢復目錄(模擬恢復目錄資料庫損壞),實際環境中可能要重新配置tnsname和listener。重新連線rman。
C: >rman
恢復管理器: 版本9.0.1.1.1 - Production
(c) Copyright 2001 Oracle Corporation. All rights reserved.
RMAN>set DBID 3456381404
正在執行命令: SET DBID
RMAN>connect target sys/oracle@to911newdb
已連線到目標資料庫 (未啟動)
RMAN>restore controlfile from autobackup;
啟動 restore 於 28-7月 -04
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00579: the following error occurred at 07/28/2004 14:55:26
RMAN-03002: failure during compilation of command
RMAN-03013: command type: restore
RMAN-03002: failure during compilation of command
RMAN-03013: command type: IRESTORE
RMAN-12010: automatic channel allocation initialization failed
RMAN-06403: could not obtain a fully authorized session
RMAN-04005: error from target database: ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
RMAN>startup force nomount
Oracle 例程已啟動
總的系統全域性區域為 302805104位元組
Fixed Size 282736位元組
Variable Size 192937984位元組
Database Buffers 109051904位元組
Redo Buffers 532480位元組
RMAN>restore controlfile from autobackup;
啟動 restore 於 28-7月 -04
正在使用目標資料庫控制檔案替代恢復目錄
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=11 devtype=DISK
通道 ORA_DISK_1, 正在查詢當天控制檔案自動備份:20040728
通道 ORA_DISK_1, 找到控制檔案自動備份:c-3456381404-20040728-02
通道 ORA_DISK_1, 控制檔案自動備份恢復已完成
正在複製控制檔案
輸出檔名=D:ORACLEORADATAHYBCONTROL01.CTL
輸出檔名=D:ORACLEORADATAHYBCONTROL02.CTL
輸出檔名=D:ORACLEORADATAHYBCONTROL03.CTL
完成 restore 於 28-7月 -04
RMAN>alter database mount;
資料庫已載入
RMAN>run
2> {
3> set until sequence 5 thread 1;
4> restore database;
5> recover database;
6> }
正在執行命令: SET until clause
正在使用目標資料庫控制檔案替代恢復目錄
啟動 restore 於 28-7月 -04
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=10 devtype=DISK
通道 ORA_DISK_1: 正在開始恢復資料檔案備份集
通道 ORA_DISK_1: 正在指定從備份集恢復的資料檔案
正將資料檔案00001恢復到D:ORACLEORADATAHYBSYSTEM01.DBF
正將資料檔案00002恢復到D:ORACLEORADATAHYBUNDOTBS01.DBF
正將資料檔案00003恢復到D:ORACLEORADATAHYBCWMLITE01.DBF
正將資料檔案00004恢復到D:ORACLEORADATAHYBDRSYS01.DBF
正將資料檔案00005恢復到D:ORACLEORADATAHYBEXAMPLE01.DBF
正將資料檔案00006恢復到D:ORACLEORADATAHYBINDX01.DBF
正將資料檔案00007恢復到D:ORACLEORADATAHYBTOOLS01.DBF
正將資料檔案00008恢復到D:ORACLEORADATAHYBUSERS01.DBF
正將資料檔案00009恢復到D:ORACLEORADATAHYBSIDB.ORA
正將資料檔案00010恢復到D:ORACLEORADATAHYBYB.ORA
正將資料檔案00011恢復到D:ORACLEORADATAHYBZS.ORA
正將資料檔案00012恢復到D:ORACLEORADATAHYBFF.ORA
正將資料檔案00013恢復到D:ORACLEORADATAHYBBM.ORA
正將資料檔案00014恢復到D:ORACLEORADATAHYBSIDB_INDEX.ORA
正將資料檔案00015恢復到D:ORACLEORADATAHYBPHOTO.ORA
正將資料檔案00016恢復到D:ORACLEORADATAHYBHIS.ORA
正將資料檔案00017恢復到D:ORACLEORADATAHYBSIDB_RBS.ORA
正將資料檔案00018恢復到D:ORACLEORADATAHYBGRYSZM1994.ORA
正將資料檔案00019恢復到D:ORACLEORADATAHYBGRYSZM1995.ORA
正將資料檔案00020恢復到D:ORACLEORADATAHYBGRYSZM1996.ORA
正將資料檔案00021恢復到D:ORACLEORADATAHYBGRYSZM1997.ORA
正將資料檔案00022恢復到D:ORACLEORADATAHYBGRYSZM1998.ORA
正將資料檔案00023恢復到D:ORACLEORADATAHYBGRYSZM1999.ORA
正將資料檔案00024恢復到D:ORACLEORADATAHYBGRYSZM2000.ORA
正將資料檔案00025恢復到D:ORACLEORADATAHYBGRYSZM2001.ORA
正將資料檔案00026恢復到D:ORACLEORADATAHYBGRYSZM2002.ORA
正將資料檔案00027恢復到D:ORACLEORADATAHYBGRYSZM2003.ORA
正將資料檔案00028恢復到D:ORACLEORADATAHYBGRYSZM2004.ORA
正將資料檔案00029恢復到D:ORACLEORADATAHYBGRYSZM2005.ORA
正將資料檔案00030恢復到D:ORACLEORADATAHYBGRYSZM2006.ORA
正將資料檔案00031恢復到D:ORACLEORADATAHYBGRYSZM2007.ORA
正將資料檔案00032恢復到D:ORACLEORADATAHYBGRYSZM2008.ORA
正將資料檔案00033恢復到D:ORACLEORADATAHYBGRYSZM_LOCAL_INDEX.ORA
正將資料檔案00034恢復到D:ORACLEORADATAHYBGRYSZM_GLOBAL_INDEX.ORA
通道 ORA_DISK_1: 已恢復備份段 1
段 handle=E:RMANHYB_532705611_02FS0SAB_1_1 tag=null params=NULL
通道 ORA_DISK_1: 恢復完成
完成 restore 於 28-7月 -04
啟動 recover 於 28-7月 -04
使用通道 ORA_DISK_1
正在開始介質的恢復
存檔日誌執行緒 1 序列 2 已作為檔案 D:ORACLEORA90RDBMSARC00002.001 存在於磁碟上
存檔日誌執行緒 1 序列 3 已作為檔案 E:ARCHIVEHYBARC_3_1.ARC 存在於磁碟上
存檔日誌執行緒 1 序列 4 已作為檔案 E:ARCHIVEHYBARC_4_1.ARC 存在於磁碟上
存檔日誌檔名 =D:ORACLEORA90RDBMSARC00002.001 執行緒 =1 序列 =2
存檔日誌檔名 =E:ARCHIVEHYBARC_3_1.ARC 執行緒 =1 序列 =3
存檔日誌檔名 =E:ARCHIVEHYBARC_4_1.ARC 執行緒 =1 序列 =4
完成介質的恢復
完成 recover 於 28-7月 –04
RMAN>
RMAN>alter database open resetlogs;
資料庫已開啟
RMAN>
4. 完成資料庫恢復。可以用sql*plus連線到資料庫上
> @conn system/manager@to911newdb
已連線。
system@FXSB01> column host_name format a30
system@FXSB01> column instance_name format a30
system@FXSB01> select host_name,instance_name from v$instance;
HOST_NAME INSTANCE_NAME
------------------------------ ------------------------------
FXSB01 hyb
5. 注意事項:
ü 執行以下查詢取得日誌序列:
sql> select sequence# from v$archived_log;
SEQUENCE#
----------
1
2
3
4
5
已選擇5行。
得到最大的日誌序列5
ü 由於rman版本為9.0.1,restore spfile from autobackup;執行出錯。不知道9.2.0的版本是否可以執行?
6. 小結:按照傳統的恢復方法,需要手工把資料檔案copy到原來的位置,重建控制檔案等一系列手工操作,容易出錯。如果使用rman,這些都不需要了,只需在rman中執行不多的命令就可以實現資料庫恢復。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/6906/viewspace-21544/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用RMAN實現災難恢復測試
- RMAN異地恢復實戰
- RMAN恢復實踐
- RMAN恢復實踐(轉)
- oracle實驗記錄 (恢復-rman恢復)Oracle
- Xtrabackup實現資料庫備份和災難恢復資料庫
- RMAN實戰
- 基於RMAN實現壞塊介質恢復(blockrecover)BloC
- RMAN恢復 執行重要檔案RMAN恢復
- 【轉】 RMAN備份與恢復實踐
- 【RMAN】RMAN跨版本恢復(上)
- 【RMAN】RMAN跨版本恢復(中)
- 透過搭建恢復目錄實現RMAN異地備份和恢復
- 用rman執行塊恢復
- 一步一步學RMAN第九篇 實戰rman恢復(1)丟失控制檔案的恢復
- 使用RMAN實現異機備份恢復(WIN平臺)
- rman備份恢復-rman入門
- oracle實驗記錄 (恢復-rman catalog)Oracle
- oracle實驗記錄 (恢復-rman保留策略)Oracle
- SQL Server災難恢復SQLServer
- dataguard中rman恢復的應用
- RMAN實戰系列之一:用duplicate複製資料庫資料庫
- RMAN恢復 執行不重要檔案的RMAN恢復
- rman備份恢復-rman恢復資料檔案測試
- oracle實驗記錄 (恢復-rman維護(1))Oracle
- oracle實驗記錄 (恢復-rman維護(2))Oracle
- oracle實驗記錄 (恢復-rman增量備份)Oracle
- RMAN備份、恢復實驗室 之 備份篇 【rman: can't open target】
- oracle實驗記錄 (恢復-rman基於控制檔案的恢復)Oracle
- RMAN恢復之RMAN-06555處理
- 【實驗】從RMAN備份中恢復spfile檔案
- RMAN 滾動式不完全恢復 小實驗
- oracle實驗記錄 (恢復-rman reset incatnation(1))Oracle
- oracle實驗記錄 (恢復-rman操作delete(all) input )Oracledelete
- Oracle RMAN備份實戰Oracle
- Oracle RMAN恢復測試Oracle
- RMAN恢復控制檔案
- Oracle rman 各種恢復Oracle