rman之同平臺異機恢復
說明:
1、作業系統:oracle_linux_5.6_32
2、資料庫:oracle_11.2.0.3 兩臺單例項資料庫。
3、本例子是在一臺資料庫壞掉的情況下,將我們的備份恢復到另一臺相同平臺的資料庫上。
注意:
另外一臺伺服器只需要安裝資料庫軟體,不需要建庫。因為我們是從原庫恢復過來。
演示步驟如下:
(1)
獲得源資料庫的DBID:
[oracle@RAC1 ~]$ rman target /
connected to target database: RAC1 (DBID=736017170)
(2)
用rman做一次全備
RMAN> backup database format '/backup/2013_11_13_2112_%U.bak';
這時會生成兩個備份集,一個是DBF的一個是控制檔案和引數檔案的。
(3)
將上面的兩個檔案傳到第二臺伺服器,還是放在一個/backup目錄下,注意授權。
不管你用什麼辦法,只要能做到就行。(比如什麼xftp工具、scp命令、拖拽、還是複製)
(4)
在第二臺伺服器上,裝一個oracle軟體,不裝資料庫,注意基本配置與原庫相同。
這裡說的基本配置就是指儘量在裝的時候按照原庫的步驟和操作來。
(5)
當第二臺伺服器上裝好oracle軟體時,可以執行:
RMAN> set dbid 736017170;
(6)
目標庫:
RMAN> startup nomount;
(7)
還原引數檔案
RMAN> restore spfile to pfile '/u01/app/oracle/product/10.2.0/db_1/dbs/initrac1.ora'
from '/backup/2013_11_13_2112_11opt80p_1_1.bak';
(8)
這一步本可省略,如果在下一步中報錯說某些路徑不存在,那就做這一步:
[root@RAC2 ~]# mkdir -p /u01/app/oracle/admin/rac1/adump
[root@RAC2 ~]# chown -R oracle:oinstall /u01/app/oracle/admin/rac1/adump
[root@RAC2 ~]# mkdir -p /u01/app/oracle/admin/rac1/udump
[root@RAC2 ~]# chown -R oracle:oinstall /u01/app/oracle/admin/rac1/udump
[root@RAC2 backup]# mkdir -p /u01/app/oracle/admin/rac1/bdump
[root@RAC2 backup]# chown -R oracle:oinstall /u01/app/oracle/admin/rac1/bdump/
(9)
用我們恢復出來的引數檔案強制啟動到nomount狀態
RMAN> startup force nomount pfile='/u01/app/oracle/product/10.2.0/db_1/dbs/initrac1.ora';
Oracle instance started
Total System Global Area 285212672 bytes
Fixed Size 1218992 bytes
Variable Size 83887696 bytes
Database Buffers 197132288 bytes
Redo Buffers 2973696 bytes
(10)
還遠控制檔案:
RMAN> restore controlfile from '/backup/2013_11_13_2112_11opt80p_1_1.bak';
Starting restore at 13-NOV-13
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=156 devtype=DISK
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:04
output filename=/u01/app/oracle/oradata/rac1/control01.ctl
output filename=/u01/app/oracle/oradata/rac1/control02.ctl
output filename=/u01/app/oracle/oradata/rac1/control03.ctl
Finished restore at 13-NOV-13
(11)
啟動資料庫到mount狀態。
RMAN> alter database mount;
database mounted
released channel: ORA_DISK_1
(12)
還原資料庫:
RMAN> restore database;
Starting restore at 13-NOV-13
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=156 devtype=DISK
channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to /u01/app/oracle/oradata/rac1/system01.dbf
restoring datafile 00002 to /u01/app/oracle/oradata/rac1/undotbs01.dbf
restoring datafile 00003 to /u01/app/oracle/oradata/rac1/sysaux01.dbf
restoring datafile 00004 to /u01/app/oracle/oradata/rac1/users01.dbf
restoring datafile 00005 to /u01/app/oracle/oradata/rac1/example01.dbf
channel ORA_DISK_1: reading from backup piece /backup/2013_11_13_2112_10opt7u0_1_1.bak
channel ORA_DISK_1: restored backup piece 1
piece handle=/backup/2013_11_13_2112_10opt7u0_1_1.bak tag=TAG20131126T041248
channel ORA_DISK_1: restore complete, elapsed time: 00:01:46
Finished restore at 13-NOV-13
(13)
恢復資料庫:
RMAN> recover database;
Starting recover at 13-NOV-13
using channel ORA_DISK_1
starting media recovery
unable to find archive log
archive log thread=1 sequence=1
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 11/13/2013 14:56:30
RMAN-06054: media recovery requesting unknown log: thread 1 seq 1 lowscn 572731
注意:
報錯了,但是沒關係,並非嚴重錯誤,只是提醒你恢復到一個未知的scn 號。如果要避免這
個錯誤,可以在alter database mount 之後,透過set until scn 或者set until time 命令設定恢復
到的scn 號或時間。
(14)
開啟資料庫,確實是可以開啟的。
RMAN> alter database open resetlogs;
database opened
(15)
檢視當前例項狀態:
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
rac1 OPEN
(16)
檢視資料:確實沒有丟。
SQL> conn scott/tiger
Connected.
SQL> select * from zsx;
ID
----------
1
2
3
4
5
6
7
8
9
10
10 rows selected.
(17)
成功了,哈哈,如果發現沒有臨時表空間,記得重建。
(18)
記得建立密碼檔案:
[oracle@RAC2 bdump]$ orapwd file=$ORACLE_HOME/dbs/orapwd$ORACLE_SID password=oracle entries=5
(19)
進行一次全備。
(20)
感謝!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29107230/viewspace-1062275/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 同平臺異機備份恢復
- 使用RMAN實現異機備份恢復(WIN平臺)
- Oracle RMAN異機恢復Oracle
- rman恢復方案和oracle異機恢復Oracle
- oracle的RMAN異機恢復Oracle
- RMAN異機恢復總結
- ORACLE RMAN異機異目錄恢復Oracle
- oracle10gR2之RMAN異機恢復案例Oracle
- Oracle 12c RMAN 異機恢復Oracle
- Oracle 11g RMAN 異機恢復Oracle
- Rman_異地、跨平臺、跨版本的恢復總結及案例
- RMAN異機恢復:RAC到單例項單例
- 異機恢復RMAN-05517解決方法
- RMAN備份異機恢復流程總結
- RMAN異地恢復實戰
- RMAN異機恢復異作業系統(Linux到Windows)作業系統LinuxWindows
- 從nub備份恢復(同平臺)恢復RAC至單例項單例
- Oracle備份恢復之熱備份恢復及異機恢復Oracle
- ORACLE 11.2.0.4 RAC RMAN異機恢復之ORA-15001Oracle
- 用 RMAN 備份異機恢復 遷移資料
- oracle 10.2.0.1 win 32 rman 備份異機恢復Oracle
- oracle11gR2_64之rman異機恢復(FS->FS)完整案例Oracle
- rman 恢復機制與恢復測試
- oracle 異機恢復Oracle
- standby全庫rman備份檔案恢復到異機
- RMAN備份恢復典型案例——跨平臺遷移pdb
- rman 異機恢復指令碼(路徑不一致)指令碼
- RMAN Catalog環境下異機全庫恢復例項
- RMAN恢復之RMAN-06555處理
- oracle冷備份、恢復和異機恢復Oracle
- Oracle 11.2.0.4 從單例項,使用RMAN 異機恢復到RACOracle單例
- RMAN備份恢復之控制檔案的恢復(三)
- RMAN備份恢復之控制檔案的恢復(二)
- RMAN備份恢復之控制檔案的恢復(一)
- rman恢復--丟失聯機重做日誌的恢復
- rman備份恢復命令之switch
- oracle之rman恢復資料庫Oracle資料庫
- oracle rman之丟失spfile恢復Oracle