Windows oracle 11g rman備份恢復到linux系統
今天試驗了下windows server 2012 下oracle rman備份整庫到linux平臺進行恢復,經過測試,是可恢復的,下面我們來看看恢復過程。
1、首先備份windows下的oracle備份;
run{
allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
sql 'alter system archive log current';
backup as compressed backupset format 'c:\backup\full_db_%d%u.bak' database;
backup current controlfile format 'c:\backup\ctl_file_%d%u.bak';
backup archivelog all tag='archivelog' format 'c:\backup\archivelog_%d%u.bak';
backup spfile format 'c:\backup\spfile_%d_U.bak';
release channel c1;
release channel c2;
release channel c3;
}
備份檔案:
2、將備份檔案複製到linux系統平臺,建立相應目錄
資料目錄:/oradata/orcl
日誌目錄:/flash_recovery_area
編輯引數檔案,使用pfile檔案(注意目錄位置及是否存在)
create spfile from pfile='/home/oracle/pfile100.ora'
startup nomount;
註冊catalog目錄 :catalog start with '/home/oracle/backup/';
恢復控制檔案:
rman target /
restore conrolfile from '/home/oracle/backup/CTL_FILE_ORCL0A0USDSC.BAK';
啟動庫到mount狀態: alter database mount;
恢復資料庫:
run{
set newname for datafile 1 to '/oradata/orcl/SYSTEM01.DBF';
set newname for datafile 2 to '/oradata/orcl/SYSAUX01.DBF';
set newname for datafile 3 to '/oradata/orcl/UNDOTBS01.DBF';
set newname for datafile 4 to '/oradata/orcl/USERS01.DBF';
restore database ;
switch datafile all;
recover database;
}
備註:recover database過程中出現 scn 19412報錯,因缺少歸檔日誌造成;重新備份日誌,複製到新的伺服器(從原來庫備份歸檔日誌,backup archivelog all format '/home/oracle/backupold/archive_%d_%u.bak';)
recover database until scn 19412; 恢復完成;
sqlplus / as sysdba
alter database open resetlogs;(歸檔日誌序列從1開始遞增)
3、新庫修復工作:
新建線上日誌組:redo01.log redo02.log redo03.log
根據使用狀態刪除後新建(刪除一個新增一個,做好日誌切換工作)
刪除logfile:alter database drop logfile group 1;
增加logfile: alter database add logfile group 1 '/oradata/orcl/redo01.log' size 50M;
切換日誌組狀態由active到unactive 或unused狀態;(直至3個組全部更換完成)
設定資料預設臨時表空間:
create temporary tablespace temp01 tempfile '/oradata/orcl/temp101.dbf' size 100m autoextend on maxsize 2g;
alter database default temporary tablespace temp01;
刪除原來temp臨時表空間: drop tablespace temp including contents and datafiles;
備註:做好新庫備份(備份中存在問題,windows下歸檔日誌路徑不存在,導致備份失敗)
windows備份檔案轉linux系統,所導致的問題。
由於控制檔案有原來的archivelog日誌資訊,造成清楚這些日誌報錯
crosscheck archivelog all;
SYS@orcl>select name from v$archived_log;
NAME
--------------------------------------------------------------------------------
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_30\O1_MF_1_5_K99OQ9QC_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_6_K9BYLFH7_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_7_K9BZ9QW1_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_8_K9BZC7Y0_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_9_K9BZD2M8_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_10_K9BZHLW2_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_11_K9BZJ072_.ARC
C:\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2022_05_31\O1_MF_1_12_K9BZMJCY_.ARC
/flash_recovery_area/ORCL/archivelog/2022_05_31/o1_mf_1_14_k9c9qs28_.arc
執行語句:
execute sys.dbms_backup_restore.resetCfileSection( 11);
select name from v$archived_log;(舊日誌刪除)
備份新庫指令碼如上(類似開頭備份指令碼,目錄位置不同,略)
Yicheng16
22.05.31
-- The End --
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69963467/viewspace-2898293/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- Oracle 備份恢復篇之RMAN catalogOracle
- ORACLE DG從庫 Rman備份恢復Oracle
- rman 增量備份恢復
- RMAN備份恢復技巧
- Linux 系統的備份恢復Linux
- RMAN備份異機恢復
- Linux 系統的備份與恢復Linux
- 【RMAN】Oracle12c以後rman 備份恢復命令參考Oracle
- Oracle 11g R2 備份與恢復Oracle
- RMAN備份恢復效能優化優化
- RMAN備份與恢復測試
- rman備份異機恢復(原創)
- RMAN備份恢復典型案例——異機恢復未知DBID
- Oracle9i RMAN 的優缺點及RMAN 備份及恢復步驟Oracle
- Linux中XFS檔案系統的備份,恢復,修復Linux
- 12 使用RMAN備份和恢復檔案
- RMAN備份恢復典型案例——ORA-00245
- 【RMAN】Oracle12c之後,rman備份Dataguard備端恢復可能出現邏輯錯誤Oracle
- Oracle 備份 與 恢復 概述Oracle
- Oracle 備份恢復之 FlashbackOracle
- ORACLE備份&恢復案例(轉)Oracle
- G017-ORACLE-MIGRATION-01 RMAN備份異機不完全恢復Oracle
- 備份恢復Lesson 04.Using the RMAN Recovery Catalog
- Oracle RMAN恢復測試Oracle
- 備份與恢復oracle_homeOracle
- oracle 增量備份恢復驗證Oracle
- Oracle 備份和恢復介紹Oracle
- ORACLE備份&恢復案例三(轉)Oracle
- ORACLE備份&恢復案例二(轉)Oracle
- ORACLE本地磁碟備份恢復Oracle
- 【RMAN】在多租戶環境下的RMAN備份及恢復
- Oracle RMAN備份實戰Oracle
- Oracle OCP(60):RMAN 備份Oracle
- 透過RMAN備份standby database成功恢復還原Database
- RMAN備份恢復典型案例——資料庫卡頓資料庫
- dg丟失歸檔,使用rman增量備份恢復
- 透過搭建恢復目錄實現RMAN異地備份和恢復