oracle11g 在azure云中使用rman进行实例迁移
生活随笔
收集整理的這篇文章主要介紹了
oracle11g 在azure云中使用rman进行实例迁移
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
?
?
1,開始備份
備份腳本rman_full_backup.sh內(nèi)容如下:
?
#!/bin/sh export DATE=`date +%F` export BACK_DIR='/backupdisk/backup/data' su - oracle -c " mkdir -p $BACK_DIR/$DATE rman log=$BACK_DIR/$DATE/rman_backup.log target / <<EOF run{backup as compressed backupset databaseformat '$BACK_DIR/$DATE/full_%d_%T_%s.bak'plus archivelog format '$BACK_DIR/$DATE/arch_%d_%T_%s.bak' delete input;sql 'alter system archive log current'; } crosscheck backup; crosscheck archivelog all; delete noprompt expired backup; delete noprompt expired archivelog all; delete noprompt obsolete; exit EOF " su - oracle -c " chmod 775 $BACK_DIR/$DATE/* "#cd /home/pdbcakup/ echo "begin to copy the backup to pd servers." >> /tmp/oracle_fullback.log #cp -r $BACK_DIR/$DATE /home/pdbcakup echo "end to copy the backup to pd server." >> /tmp/oracle_fullback.log?
?
?
?
?
備份過程如下所示:
[root@test_90 ~]# bash -x /oracle/backup/scripts/rman_full_backup.sh ++ date +%F + export DATE=2016-03-17 + DATE=2016-03-17 + export BACK_DIR=/oracle/backup/data + BACK_DIR=/oracle/backup/data + su - oracle -c ' mkdir -p /oracle/backup/data/2016-03-17 rman log=/oracle/backup/data/2016-03-17/rman_backup.log target / <<EOF run{backup as compressed backupset databaseformat '\''/oracle/backup/data/2016-03-17/full_%d_%T_%s.bak'\''plus archivelog format '\''/oracle/backup/data/2016-03-17/arch_%d_%T_%s.bak'\'' delete input;sql '\''alter system archive log current'\''; } crosscheck backup; crosscheck archivelog all; delete noprompt expired backup; delete noprompt expired archivelog all; delete noprompt obsolete; exit EOF ' RMAN> 2> 3> 4> 5> 6> 7> RMAN> RMAN> RMAN> RMAN> RMAN> RMAN> + su - oracle -c ' chmod 775 /oracle/backup/data/2016-03-17/* ' + echo 'begin to copy the backup to pd servers.' + echo 'end to copy the backup to pd server.' [root@test_90 ~]# ll?
?
2,查看備份的文件目錄
?
?
?
RMAN> list backup of controlfile;using target database control file instead of recovery catalogList of Backup Sets ===================BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 6 Full 1.05M DISK 00:00:01 17-MAR-16 BP Key: 6 Status: AVAILABLE Compressed: YES Tag: TAG20160317T202130Piece Name: /oracle/backup/data/2016-03-17/full_POWERDES_20160317_15.bakControl File Included: Ckp SCN: 31576216 Ckp time: 17-MAR-16RMAN> list backup of spfile;List of Backup Sets ===================BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 6 Full 1.05M DISK 00:00:01 17-MAR-16 BP Key: 6 Status: AVAILABLE Compressed: YES Tag: TAG20160317T202130Piece Name: /oracle/backup/data/2016-03-17/full_POWERDES_20160317_15.bakSPFILE Included: Modification time: 17-MAR-16SPFILE db_unique_name: POWERDESRMAN> [oracle@test_90 ~]$ rlwrap sqlplus / as sysdbaSQL*Plus: Release 11.2.0.1.0 Production on Thu Mar 17 21:08:32 2016Copyright (c) 1982, 2009, Oracle. All rights reserved.Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> SQL> create pfile='/oracle/pfile_20160317.ora' from spfile;File created.SQL>?
原blog地址:?http://blog.csdn.net/mchdba/article/details/50990181,未經(jīng)過原作者mchdba(黃杉)同意,謝絕轉(zhuǎn)載。
?
3,傳輸
?
?
[oracle@test_90 ~]$ scp -P50390 -r /oracle/pfile_20160317.ora 2016-03-17 192.168.237.46:/oracle/backup/ The authenticity of host '[192.168.237.46]:50390 ([192.168.237.46]:50390)' can't be established. RSA key fingerprint is c0:1c:30:8a:bd:8c:90:b2:af:57:1d:29:ab:1f:90:f9. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '[192.168.237.46]:50390' (RSA) to the list of known hosts. oracle@192.168.237.46's password: pfile_20160317.ora 100% 1008 1.0KB/s 00:00 [oracle@test_90 ~]$ [oracle@test_90 data]$ scp -P50390 -r 2016-03-17 192.168.237.46:/oracle/backup/ oracle@192.168.237.46's password: full_POWERDES_20160317_14.bak 100% 1914MB 4.7MB/s 06:49 full_POWERDES_20160317_15.bak 100% 1088KB 1.1MB/s 00:00 arch_POWERDES_20160317_16.bak 100% 180KB 179.5KB/s 00:00 rman_backup.log 100% 6331 6.2KB/s 00:00 [oracle@test_90 data]$
4,去目標庫上nomount方式啟動數(shù)據(jù)庫
?
SQL> shutdown immediate ORA-01507: database not mountedORACLE instance shut down. SQL> startup nomount pfile='/oracle/backup/pfile_20160317.ora'; ORACLE instance started.Total System Global Area 1603411968 bytes Fixed Size 2213776 bytes Variable Size 1023412336 bytes Database Buffers 570425344 bytes Redo Buffers 7360512 bytes SQL>
5,恢復控制文件
?
RMAN> restore controlfile to '/oracle/app/oracle/orclstu/control01.ctl' from '/oracle/backup/2016-03-17/full_POWERDES_20160317_15.bak';Starting restore at 17-MAR-16 using channel ORA_DISK_1channel ORA_DISK_1: restoring control file channel ORA_DISK_1: restore complete, elapsed time: 00:00:01 Finished restore at 17-MAR-16RMAN>
6,將數(shù)據(jù)庫狀態(tài)改成mount:
?
RMAN> alter database mount 2> ;database mounted released channel: ORA_DISK_1RMAN>
7,注冊備份文件
?
RMAN> catalog start with '/oracle/backup/2016-03-17';Starting implicit crosscheck backup at 17-MAR-16 allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=134 device type=DISK Crosschecked 4 objects Finished implicit crosscheck backup at 17-MAR-16Starting implicit crosscheck copy at 17-MAR-16 using channel ORA_DISK_1 Finished implicit crosscheck copy at 17-MAR-16searching for all files in the recovery area cataloging files... no files catalogedsearching for all files that match the pattern /oracle/backup/2016-03-17List of Files Unknown to the Database ===================================== File Name: /oracle/backup/2016-03-17/rman_backup.log File Name: /oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_15.bak File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_14.bakDo you really want to catalog the above files (enter YES or NO)? YES cataloging files... cataloging doneList of Cataloged Files ======================= File Name: /oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_15.bak File Name: /oracle/backup/2016-03-17/full_POWERDES_20160317_14.bakList of Files Which Where Not Cataloged ======================================= File Name: /oracle/backup/2016-03-17/rman_backup.logRMAN-07517: Reason: The file header is corruptedRMAN>
8,開始執(zhí)行restore恢復操作,將數(shù)據(jù)從備份集寫入到磁盤上的數(shù)據(jù)文件里面,還原已經(jīng)備份的數(shù)據(jù)文件
?
?
?
RMAN> restore database;Starting restore at 17-MAR-16 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=133 device type=DISKchannel ORA_DISK_1: starting datafile backup set restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set channel ORA_DISK_1: restoring datafile 00001 to /data/oracle/orclstu/system01.dbf channel ORA_DISK_1: restoring datafile 00002 to /data/oracle/orclstu/sysaux01.dbf channel ORA_DISK_1: restoring datafile 00003 to /data/oracle/orclstu/undotbs01.dbf channel ORA_DISK_1: restoring datafile 00004 to /data/oracle/orclstu/users01.dbf channel ORA_DISK_1: restoring datafile 00005 to /data/oracle/orclstu/orclstuk01.dbf channel ORA_DISK_1: restoring datafile 00006 to /data/oracle/orclstu/plas01.dbf channel ORA_DISK_1: restoring datafile 00007 to /data/oracle/orclstu/plcrm01.dbf channel ORA_DISK_1: restoring datafile 00008 to /data/oracle/orclstu/pl01.dbf channel ORA_DISK_1: restoring datafile 00009 to /data/oracle/orclstu/help01.dbf channel ORA_DISK_1: reading from backup piece /oracle/backup/2016-03-17/full_POWERDES_20160317_14.bak channel ORA_DISK_1: piece handle=/oracle/backup/2016-03-17/full_POWERDES_20160317_14.bak tag=TAG20160317T202130 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:14:25 Finished restore at 17-MAR-16RMAN>?
?
?
9,應用歸檔日志恢復數(shù)據(jù)文件
?
?
?
RMAN> recover database;Starting recover at 17-MAR-16 using channel ORA_DISK_1starting media recoverychannel ORA_DISK_1: starting archived log restore to default destination channel ORA_DISK_1: restoring archived log archived log thread=1 sequence=1428 channel ORA_DISK_1: reading from backup piece /oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak channel ORA_DISK_1: piece handle=/oracle/backup/2016-03-17/arch_POWERDES_20160317_16.bak tag=TAG20160317T202918 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:00:03 archived log file name=/oracle/app/oracle/flash_recovery_area/POWERDES/archivelog/2016_03_17/o1_mf_1_1428_cgog3ons_.arc thread=1 sequence=1428 channel default: deleting archived log(s) archived log file name=/oracle/app/oracle/flash_recovery_area/POWERDES/archivelog/2016_03_17/o1_mf_1_1428_cgog3ons_.arc RECID=2 STAMP=906760822 unable to find archived log archived log thread=1 sequence=1429 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03002: failure of recover command at 03/17/2016 22:00:29 RMAN-06054: media recovery requesting unknown archived log for thread 1 with sequence 1429 and starting SCN of 31576222RMAN>
需要將缺失的歸檔日志從原始備份庫copy到微軟云azure的oracle服務(wù)器上 ,或者直接恢復到SCN點上:
?
RMAN> recover database until scn 31576222;Starting recover at 17-MAR-16 using channel ORA_DISK_1starting media recovery media recovery complete, elapsed time: 00:00:00Finished recover at 17-MAR-16RMAN>
10,打開數(shù)據(jù)庫
?
RMAN> alter database open resetlogs;database openedRMAN>
11,驗證數(shù)據(jù)庫
?
[oracle@yueworldoracle_crm admin]$ more tnsnames.ora # tnsnames.ora Network Configuration File: /oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora # Generated by Oracle configuration tools.POWERDES =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orclstu)))CRM390 =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.158.3.91)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orclstu))) [oracle@yueworldoracle_crm admin]$ [oracle@yueworldoracle_crm admin]$ rlwrap sqlplus orclstuk/pa1624390@CRM390;SQL*Plus: Release 11.2.0.1.0 Production on Thu Mar 17 22:15:41 2016Copyright (c) 1982, 2009, Oracle. All rights reserved.Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, OLAP, Data Mining and Real Application Testing optionsSQL> create table z_te(id number);Table created.SQL> insert into z_te(id)values(1);1 row created.SQL> commit;Commit complete.SQL> select * from z_te;ID ----------1SQL> drop table z_te;Table dropped.SQL> select * from z_te; select * from z_te* ERROR at line 1: ORA-00942: table or view does not existSQL>?
總結(jié)
以上是生活随笔為你收集整理的oracle11g 在azure云中使用rman进行实例迁移的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: igs时间和utc_UTC时间与北京时间
- 下一篇: 研究War3编辑器(7):在触发器中使用