RAC恢復到單例項節點上
1 簡單說明:
版本:11.2.0.3
平臺:linux-x86-64 到 win7-64bit
例項: bdstar1,bdstar2 還原到bdstar上 參考:三思筆記資料庫備份與恢復
2 windows平臺系統恢復環境建立
建立例項:oradim -new -sidbdstar 編寫一個簡單的引數檔案:
*.audit_file_dest='E:\app\Administrator\admin\bdstar\adump' *.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='E:\app\Administrator\oradata\bdstar\control01.ctl' *.db_block_size=8192 *.db_domain='' *.db_name='bdstar'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=bdstarXDB)' *.nls_language='SIMPLIFIED CHINESE' *.nls_territory='CHINA' *.open_cursors=300
*.pga_aggregate_target=184549376 *.processes=150
*.remote_login_passwordfile='exclusive' *.sga_target=553648128
*.undo_tablespace='UNDOTBS1'
bdstar.__oracle_base='E:\app\Administrator'#ORACLE_BASE set from environment
3 控制檔案的建立
set oracle_sid=bdstar --設定環境變數
C:\Users\Administrator>sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on 星期二 9月 11 10:02:23 2012
Copyright (c) 1982, 2011, Oracle. All rights reserved.
已連線到空閒例程。
SQL>startupnomount
ORACLE 例程已經啟動。
Total System Global Area 551165952 bytes Fixed Size 2257072 bytes Variable Size 171970384 bytes Database Buffers 369098752 bytes Redo Buffers 7839744 bytes SQL> create spfile from pfile;
--轉入到RMAN還原控制檔案
RMAN > set dbid=165487523 --dbid可是從備份檔案的log日誌獲得
--從linux中將備份全部複製到windows下的d:\oraback\下
RMAN > restore controfile from 'd:\oraback\1_32_793037884.dbf' --該檔案為linuxrac下autobackup control檔案
RMAN > alter database mount;
--下面就可以看到RAC資料庫中的一些基本情況了,根據這些基本情況進行還原
SQL> selectfile#,name from v$datafile;
FILE# ---------- NAME
--------------------------------------------------------------------------------
1
+DATA/bdstar/datafile/system.256.793037767
2
+DATA/bdstar/datafile/sysaux.257.793037769
3
+DATA/bdstar/datafile/undotbs1.258.793037769
FILE# ---------- NAME
4
+DATA/bdstar/datafile/users.259.793037771
5
+DATA/bdstar/datafile/undotbs2.264.793038149
6
+DATA/bdstar/datafile/tbs_spotlight.268.793381581
已選擇6行。
SQL> selectfile#,name from v$tempfile;
FILE# ---------- NAME
--------------------------------------------------------------------------------
1
+DATA/bdstar/tempfile/temp.263.793037901
SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
+DATA/bdstar/onlinelog/group_2.262.793037887 +DATA/bdstar/onlinelog/group_1.261.793037885 +DATA/bdstar/onlinelog/group_3.265.793038337 +DATA/bdstar/onlinelog/group_4.266.793038339
4 恢復資料檔案
--載入你的備份,使RMAN識別你的備份集
RMAN>catalogbackuppiece 'd:\oraback\cre0_16_793617290.db';
已將備份片段列入目錄
備份片段控制程式碼=D:\ORABACK\CRE0_16_793617290.DB RECID=10 STAMP=793646472
RMAN>catalogbackuppiece 'd:\oraback\cre0_17_793617290.db';
已將備份片段列入目錄
備份片段控制程式碼=D:\ORABACK\CRE0_17_793617290.DB RECID=11 STAMP=793646486
RMAN>catalogbackuppiece 'd:\oraback\cre0_18_793617292.db';
已將備份片段列入目錄
備份片段控制程式碼=D:\ORABACK\CRE0_18_793617292.DB RECID=12 STAMP=793646496
RMAN>catalogbackuppiece 'd:\oraback\cre0_19_793617316.db';
已將備份片段列入目錄
備份片段控制程式碼=D:\ORABACK\CRE0_19_793617316.DB RECID=13 STAMP=793646514
RMAN>catalogbackuppiece 'd:\oraback\cre0_23_793617422.arc';
已將備份片段列入目錄
備份片段控制程式碼=D:\ORABACK\CRE0_23_793617422.ARC RECID=14 STAMP=793646540
RMAN>catalogbackuppiece 'd:\oraback\cre0_24_793617499.arc';
已將備份片段列入目錄
備份片段控制程式碼=D:\ORABACK\CRE0_24_793617499.ARC RECID=15 STAMP=793646554
--將資料檔案恢復到新的位置 RMAN>run{
2> set newname for datafile 1 to 'E:\app\Administrator\oradata\bdstar\system.dbf ';
3> set newname for datafile 2 to 'E:\app\Administrator\oradata\bdstar\sysaux.dbf ';
4> set newname for datafile 3 to 'E:\app\Administrator\oradata\bdstar\undotbs1.d bf';
5> set newname for datafile 4 to 'E:\app\Administrator\oradata\bdstar\users.dbf' ;
6> set newname for datafile 5 to 'E:\app\Administrator\oradata\bdstar\undotbs2.d bf';
7> set newname for datafile 6 to 'E:\app\Administrator\oradata\bdstar\tbs_spotli ght.dbf';
8> set newname for tempfile 1 to 'E:\app\Administrator\oradata\bdstar\temp01.dbf ';
9> restore database;
10> switch datafile all;
11> switch tempfile all;
12> }
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
正在執行命令: SET NEWNAME
啟動 restore 於 10-9月 -12 使用通道 ORA_DISK_1
資料檔案 2 已經還原到檔案 E:\app\Administrator\oradata\bdstar\sysaux.dbf 中 資料檔案 4 已經還原到檔案 E:\app\Administrator\oradata\bdstar\users.dbf 中 通道 ORA_DISK_1: 正在開始還原資料檔案備份集
通道 ORA_DISK_1: 正在指定從備份集還原的資料檔案 通道 ORA_DISK_1: 將資料檔案 00001 還原到 E:\app\Administrator\oradata\bdstar\sys tem.dbf
通道 ORA_DISK_1: 將資料檔案 00005 還原到 E:\app\Administrator\oradata\bdstar\und otbs2.dbf
通道 ORA_DISK_1: 正在讀取備份片段 D:\ORABACK\CRE0_16_793617290.DB
通道 ORA_DISK_1: 段控制程式碼 = D:\ORABACK\CRE0_16_793617290.DB 標記 = LEVEL_0
通道 ORA_DISK_1: 已還原備份片段 1
通道 ORA_DISK_1: 還原完成, 用時: 00:00:35
通道 ORA_DISK_1: 正在開始還原資料檔案備份集
通道 ORA_DISK_1: 正在指定從備份集還原的資料檔案 通道 ORA_DISK_1: 將資料檔案 00003 還原到 E:\app\Administrator\oradata\bdstar\undotbs1.dbf
通道 ORA_DISK_1: 將資料檔案 00006 還原到 E:\app\Administrator\oradata\bdstar\tbs _spotlight.dbf
通道 ORA_DISK_1: 正在讀取備份片段 D:\ORABACK\CRE0_17_793617290.DB
通道 ORA_DISK_1: 段控制程式碼 = D:\ORABACK\CRE0_17_793617290.DB 標記 = LEVEL_0
通道 ORA_DISK_1: 已還原備份片段 1
通道 ORA_DISK_1: 還原完成, 用時: 00:00:03 完成 restore 於 10-9月 -12
資料檔案 1 已轉換成資料檔案副本
輸入資料檔案副本 RECID=7 STAMP=793646621 檔名=E:\APP\ADMINISTRATOR\ORADATA\BDS TAR\SYSTEM.DBF
資料檔案 2 已轉換成資料檔案副本
輸入資料檔案副本 RECID=8 STAMP=793646621 檔名=E:\app\Administrator\oradata\bds tar\sysaux.dbf
資料檔案 3 已轉換成資料檔案副本
輸入資料檔案副本 RECID=9 STAMP=793646621 檔名=E:\APP\ADMINISTRATOR\ORADATA\BDS TAR\UNDOTBS1.DBF
資料檔案 4 已轉換成資料檔案副本
輸入資料檔案副本 RECID=10 STAMP=793646621 檔名=E:\app\Administrator\oradata\bd star\users.dbf
資料檔案 5 已轉換成資料檔案副本
輸入資料檔案副本 RECID=11 STAMP=793646621 檔名=E:\APP\ADMINISTRATOR\ORADATA\BD STAR\UNDOTBS2.DBF
資料檔案 6 已轉換成資料檔案副本
輸入資料檔案副本 RECID=12 STAMP=793646621 檔名=E:\APP\ADMINISTRATOR\ORADATA\BD STAR\TBS_SPOTLIGHT.DBF
臨時檔案 1 在控制檔案中已重新命名為
E:\app\Administrator\oradata\bdstar\temp01.dbf
RMAN> recover database 2>
啟動 recover 於 10-9月 -12 使用通道 ORA_DISK_1
正在開始介質的恢復
通道 ORA_DISK_1: 正在開始將歸檔日誌還原到預設目標 通道 ORA_DISK_1: 正在還原歸檔日誌 歸檔日誌執行緒=2 序列=26
通道 ORA_DISK_1: 正在讀取備份片段 D:\ORABACK\CRE0_23_793617422.ARC
通道 ORA_DISK_1: 段控制程式碼 = D:\ORABACK\CRE0_23_793617422.ARC 標記 = TAG20120910T09 1635
通道 ORA_DISK_1: 已還原備份片段 1
通道 ORA_DISK_1: 還原完成, 用時: 00:00:03
通道 ORA_DISK_1: 正在開始將歸檔日誌還原到預設目標 通道 ORA_DISK_1: 正在還原歸檔日誌 歸檔日誌執行緒=1 序列=30
通道 ORA_DISK_1: 正在還原歸檔日誌 歸檔日誌執行緒=1 序列=31
通道 ORA_DISK_1: 正在還原歸檔日誌 歸檔日誌執行緒=2 序列=27
通道 ORA_DISK_1: 正在讀取備份片段 D:\ORABACK\CRE0_24_793617499.ARC
通道 ORA_DISK_1: 段控制程式碼 = D:\ORABACK\CRE0_24_793617499.ARC 標記 = TAG20120910T09 1635
通道 ORA_DISK_1: 已還原備份片段 1
通道 ORA_DISK_1: 還原完成, 用時: 00:00:03 歸檔日誌檔名
=E:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\RDBMS\ARC0000000030_
0793037884.0001 執行緒=1 序列=30 歸檔日誌檔名
=E:\APP\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\RDBMS\ARC0000000026_
0793037884.0002 執行緒=2 序列=26 RMAN-00571:
=========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571:
=========================================================== RMAN-03002: recover 命令 (在 09/10/2012 17:25:54 上) 失敗
RMAN-11003: 在分析/執行 SQL 語句期間失敗: alter database recover logfile 'E:\APP
\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\RDBMS\ARC0000000026_0793037884.0002'
ORA-10562: Error occurred while applying redo to data block (file# 2, block# 402 84)
ORA-10564: tablespace SYSAUX ORA-01110: 資料檔案 2:
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\SYSAUX.DBF'
ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 70514
ORA-00600: 內部錯誤程式碼, 引數: [6122], [0], [24024], [0], [], [], [], [], [], [] , [], []
6 重新編寫控制檔案
SQL > alter database backup controlfile to trace as 'd:/oraback/controlfile.sql' --轉存目前資料庫控制檔案,根據該檔案重新建立控制檔案。
--以上的錯誤正常,由於日誌不一致造成的。關閉資料庫啟動到nomount階段
SQL > STARTUP NOMOUNT
SQL > CREATE CONTROLFILE REUSE DATABASE "BDSTAR" RESETLOGS NOARCHIVELOG
MAXLOGFILES 192 MAXLOGMEMBERS 3 MAXDATAFILES 1024 MAXINSTANCES 32 MAXLOGHISTORY 292 LOGFILE
GROUP 1 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\redo01.dbf' SIZE 50M BLOCKSIZE 512,
GROUP 2 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\redo02.dbf' SIZE 50M BLOCKSIZE 512 DATAFILE
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\SYSTEM.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\SYSAUX.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\UNDOTBS1.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\USERS.DBF',
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\UNDOTBS2.DBF',
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\TBS_SPOTLIGHT.DBF'
RMAN-11003: 在分析/執行 SQL 語句期間失敗: alter database recover logfile 'E:\APP
\ADMINISTRATOR\PRODUCT\11.2.0\DBHOME_1\RDBMS\ARC0000000026_0793037884.0002'
ORA-10562: Error occurred while applying redo to data block (file# 2, block# 402 84)
ORA-10564: tablespace SYSAUX ORA-01110: 資料檔案 2:
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\SYSAUX.DBF'
ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 70514
ORA-00600: 內部錯誤程式碼, 引數: [6122], [0], [24024], [0], [], [], [], [], [], [] , [], []
6 重新編寫控制檔案
SQL > alter database backup controlfile to trace as 'd:/oraback/controlfile.sql' --轉存目前資料庫控制檔案,根據該檔案重新建立控制檔案。
--以上的錯誤正常,由於日誌不一致造成的。關閉資料庫啟動到nomount階段
SQL > STARTUP NOMOUNT
SQL > CREATE CONTROLFILE REUSE DATABASE "BDSTAR" RESETLOGS NOARCHIVELOG
MAXLOGFILES 192 MAXLOGMEMBERS 3 MAXDATAFILES 1024 MAXINSTANCES 32 MAXLOGHISTORY 292 LOGFILE
GROUP 1 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\redo01.dbf' SIZE 50M BLOCKSIZE 512,
GROUP 2 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\redo02.dbf' SIZE 50M BLOCKSIZE 512 DATAFILE
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\SYSTEM.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\SYSAUX.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\UNDOTBS1.DBF', 'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\USERS.DBF',
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\UNDOTBS2.DBF',
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\TBS_SPOTLIGHT.DBF'
CHARACTER SET ZHS16GBK
--關閉重啟
SQL>startup mount
ORACLE 例程已經啟動。
Total System Global Area 551165952 bytes Fixed Size 2257072 bytes Variable Size 167776080 bytes Database Buffers 373293056 bytes Redo Buffers 7839744 bytes 資料庫裝載完畢。
SQL> alter database open resetlogs; -- 這一步很關鍵啊,為什麼後加例項2的兩個日誌檔案,這需要思考的地方。 alter database open resetlogs *
第 1 行出現錯誤:
ORA-38856: 無法將例項 UNNAMED_INSTANCE_2 (重做執行緒 2) 標記為啟用
SQL> alter database add logfile thread 2 group 3 'E:\APP\ADMINISTRATOR\ORADATA\B DSTAR\redo03.dbf' size 100M,group 4
'E:\APP\ADMINISTRATOR\ORADATA\BDSTAR\redo04. dbf' size 100M;
資料庫已更改。
SQL> alter database open resetlogs;
資料庫已更改。
7恢復成功後的後續處理
SQL> select * from v$log;
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# NEXT_TIME
---------------- ------------- -------------- ------------ --------------
1 1 1 52428800 512 1 NO CURRENT 3134189 10-9月 -12 2.8147E+14
2 1 0 52428800 512 1 YES
UNUSED 0 0
3 2 1 104857600 512 1 NO CURRENT 3134189 10-9月 -12 2.8147E+14
GROUP# THREAD# SEQUENCE# BYTES BLOCKSIZE MEMBERS ARC
---------- ---------- ---------- ---------- ---------- ---------- ---
STATUS FIRST_CHANGE# FIRST_TIME NEXT_CHANGE# NEXT_TIME
---------------- ------------- -------------- ------------ --------------
4 2 0 104857600 512 1 YES
UNUSED 0 0
--刪除thread 2 的日誌
SQL> alter database disable thread 2;
資料庫已更改。
SQL> alter database drop logfile group 3;
資料庫已更改。
SQL> alter database drop logfile group 4;
資料庫已更改。
SQL> show parameter undo_tablespace
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------
undo_tablespace string UNDOTBS1 SQL> drop undo_tablespace undotbs2; dropundo_tablespace undotbs2 *
第 1 行出現錯誤:
ORA-00950: 無效 DROP 選項
SQL> select name from v$tablespace where name like 'UNDO%' 2 ;
NAME
------------------------------ UNDOTBS1 UNDOTBS2
SQL> DROP TABLESPACE UNDOTBS2 INCLUDING CONTENTS AND DATAFILES;
表空間已刪除。
--建立臨時表空間
SQL> alter tablespace temp add tempfile 'E:\app\Administrator\oradata\bdstar\tem p01.dbf' size 50m;
表空間已更改。
SQL> ARCHIVE LOG LIST; 資料庫日誌模式非存檔模式 自動存檔禁用
存檔終點 E:\app\Administrator\product\11.2.0\dbhome_1\RDBMS 最早的聯機日誌序列 1 當前日誌序列 1
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/196700/viewspace-1264642/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- rac恢復到單例項單例
- RAC asm恢復到單例項ASM單例
- rac到單例項的rman恢復單例
- rac asm 恢復到 單例項 1ASM單例
- rac asm 恢復到 單例項 2ASM單例
- RMAN異機恢復:RAC到單例項單例
- 恢復rac db(raw)到單例項下單例
- 單例項備份集恢復到RAC單例
- 單例項恢復至RAC單例
- RAC從帶庫到單例項的恢復單例
- 恢復RAC資料庫到單例項(ASM)資料庫單例ASM
- 10g rac asm 恢復到 單例項(二)ASM單例
- 10g rac asm 恢復到 單例項(一)ASM單例
- RAC 資料庫恢復到單例項下並且基於時間點恢復資料庫單例
- RAC資料庫恢復到單例項資料庫資料庫單例
- 單例項備份恢復成RAC單例
- 3節點rac基礎上配置goldengate(單例項)Go單例
- Oracle 11.2.0.4 從單例項,使用RMAN 異機恢復到RACOracle單例
- Oracle RAC恢復成單節點資料庫Oracle資料庫
- 【kingsql分享】將RAC資料庫異機恢復到單例項(Ⅰ)SQL資料庫單例
- 從nub備份恢復(同平臺)恢復RAC至單例項單例
- 單例項恢復RAC資料庫步驟(三)單例資料庫
- 單例項恢復RAC資料庫步驟(二)單例資料庫
- 單例項恢復RAC資料庫步驟(一)單例資料庫
- 記錄一次Oracle 11.2.0.4 RAC異地恢復到單例項Oracle單例
- oracle 11C rman 恢復到單例項Oracle單例
- 【RAC】將單例項備份集恢復為rac資料庫單例資料庫
- 【RAC】將RAC備份集恢復為單例項資料庫單例資料庫
- 搭建RAC到單例項DG單例
- oracle10g單例項遷移至3節點RACOracle單例
- RAC一個節點恢復另一個節點在帶庫上的備份
- 將RAC備份集恢復為單例項資料庫單例資料庫
- 11G RAC 異機恢復至單例項測試單例
- RAC資料庫的RMAN備份異機恢復到單節點資料庫資料庫
- oracle 10g rac 單例項恢復至ORACLE10G RAC RMANOracle 10g單例
- OGG搭建(rac到-->單例項)單例
- Networker恢復oracle rac到單機Oracle
- 單例項環境利用備份恢復RAC資料庫(四)單例資料庫