11g 使用rman duplicate复制数据库,创建辅助实例
2014-04-29 15:57
585 查看
一,创建所需目录
1)创建审计文件目录
2)创建数据文件目录
二,创建参数文件和密码文件
这里,复制主库的参数文件和密码文件,参数文件稍作修改
修改参数文件
三,配置监听及TNS
这里,使用静态监听
tnsnames.ora添加
确认,
四,启动辅助实例
启动辅助实例到nomount模式,也只能启动到nomount,一定要使用spfile参数文件
PROD1@dbrac1/home/oracle$sqlplus/assysdba
SQL*Plus:Release11.2.0.1.0ProductiononTueApr2914:21:222014
Copyright(c)1982,2009,Oracle.Allrightsreserved.
Connectedtoanidleinstance.
SQL>createspfilefrompfile;
Filecreated.
SQL>startupnomount
ORACLEinstancestarted.
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
五,rman连接TARGET和AUXILLARY实例,采用全字符串连接
StartingDuplicateDbat29-APR-14
usingtargetdatabasecontrolfileinsteadofrecoverycatalog
allocatedchannel:ORA_AUX_DISK_1
channelORA_AUX_DISK_1:SID=192devicetype=DISK
contentsofMemoryScript:
{
sqlclone"altersystemsetdb_name=
''PROD''comment=
''ModifiedbyRMANduplicate''scope=spfile";
sqlclone"altersystemsetdb_unique_name=
''PROD1''comment=
''ModifiedbyRMANduplicate''scope=spfile";
shutdowncloneimmediate;
startupcloneforcenomount
backupascopycurrentcontrolfileauxiliaryformat'/dsg/oracle11/PROD1/control01.ctl';
restoreclonecontrolfileto'/dsg/oracle11/PROD1/control02.ctl'from
'/dsg/oracle11/PROD1/control01.ctl';
alterclonedatabasemount;
}
executingMemoryScript
sqlstatement:altersystemsetdb_name=''PROD''comment=''ModifiedbyRMANduplicate''scope=spfile
sqlstatement:altersystemsetdb_unique_name=''PROD1''comment=''ModifiedbyRMANduplicate''scope=spfile
Oracleinstanceshutdown
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
Startingbackupat29-APR-14
allocatedchannel:ORA_DISK_1
channelORA_DISK_1:SID=136devicetype=DISK
channelORA_DISK_1:startingdatafilecopy
copyingcurrentcontrolfile
outputfilename=/u01/app/oracle/product/11.2.0/dbs/snapcf_PROD.ftag=TAG20140429T142805RECID=5STAMP=846167286
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:03
Finishedbackupat29-APR-14
Startingrestoreat29-APR-14
allocatedchannel:ORA_AUX_DISK_1
channelORA_AUX_DISK_1:SID=192devicetype=DISK
channelORA_AUX_DISK_1:copiedcontrolfilecopy
Finishedrestoreat29-APR-14
databasemounted
contentsofMemoryScript:
{
setnewnamefordatafile1to
"/dsg/oracle11/PROD1/system01.dbf";
setnewnamefordatafile2to
"/dsg/oracle11/PROD1/sysaux01.dbf";
setnewnamefordatafile3to
"/dsg/oracle11/PROD1/undotbs01.dbf";
setnewnamefordatafile4to
"/dsg/oracle11/PROD1/users01.dbf";
backupascopyreuse
datafile1auxiliaryformat
"/dsg/oracle11/PROD1/system01.dbf"datafile
2auxiliaryformat
"/dsg/oracle11/PROD1/sysaux01.dbf"datafile
3auxiliaryformat
"/dsg/oracle11/PROD1/undotbs01.dbf"datafile
4auxiliaryformat
"/dsg/oracle11/PROD1/users01.dbf";
sql'altersystemarchivelogcurrent';
}
executingMemoryScript
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
Startingbackupat29-APR-14
usingchannelORA_DISK_1
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00002name=/dsg/oracle11/PROD/sysaux01.dbf
outputfilename=/dsg/oracle11/PROD1/sysaux01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:03:05
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00001name=/dsg/oracle11/PROD/system01.dbf
outputfilename=/dsg/oracle11/PROD1/system01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:55
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00003name=/dsg/oracle11/PROD/undotbs01.dbf
outputfilename=/dsg/oracle11/PROD1/undotbs01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:35
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00004name=/dsg/oracle11/PROD/users01.dbf
outputfilename=/dsg/oracle11/PROD1/users01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:15
Finishedbackupat29-APR-14
sqlstatement:altersystemarchivelogcurrent
contentsofMemoryScript:
{
backupascopyreuse
archiveloglike"/dsg/oracle11/PROD/arch/log1_130_839354331.arc"auxiliaryformat
"/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arc";
catalogclonearchivelog"/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arc";
switchclonedatafileall;
}
executingMemoryScript
Startingbackupat29-APR-14
usingchannelORA_DISK_1
channelORA_DISK_1:startingarchivedlogcopy
inputarchivedlogthread=1sequence=130RECID=89STAMP=846167588
outputfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arcRECID=0STAMP=0
channelORA_DISK_1:archivedlogcopycomplete,elapsedtime:00:00:03
Finishedbackupat29-APR-14
catalogedarchivedlog
archivedlogfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arcRECID=88STAMP=846167592
datafile1switchedtodatafilecopy
inputdatafilecopyRECID=5STAMP=846167592filename=/dsg/oracle11/PROD1/system01.dbf
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=6STAMP=846167592filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=7STAMP=846167592filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=8STAMP=846167593filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
setuntilscn2097725;
recover
clonedatabase
deletearchivelog
;
}
executingMemoryScript
executingcommand:SETuntilclause
Startingrecoverat29-APR-14
usingchannelORA_AUX_DISK_1
startingmediarecovery
archivedlogforthread1withsequence130isalreadyondiskasfile/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arc
archivedlogfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arcthread=1sequence=130
mediarecoverycomplete,elapsedtime:00:00:00
Finishedrecoverat29-APR-14
contentsofMemoryScript:
{
shutdowncloneimmediate;
startupclonenomount;
sqlclone"altersystemsetdb_name=
''PROD1''comment=
''ResettooriginalvaluebyRMAN''scope=spfile";
sqlclone"altersystemresetdb_unique_namescope=spfile";
shutdowncloneimmediate;
startupclonenomount;
}
executingMemoryScript
databasedismounted
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
sqlstatement:altersystemsetdb_name=''PROD1''comment=''ResettooriginalvaluebyRMAN''scope=spfile
sqlstatement:altersystemresetdb_unique_namescope=spfile
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
sqlstatement:CREATECONTROLFILEREUSESETDATABASE"PROD1"RESETLOGSARCHIVELOG
MAXLOGFILES16
MAXLOGMEMBERS3
MAXDATAFILES100
MAXINSTANCES8
MAXLOGHISTORY292
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03.log')SIZE50MREUSE
DATAFILE
'/dsg/oracle11/PROD1/system01.dbf'
CHARACTERSETZHS16GBK
contentsofMemoryScript:
{
setnewnamefortempfile1to
"/dsg/oracle11/PROD1/temp01.dbf";
switchclonetempfileall;
catalogclonedatafilecopy"/dsg/oracle11/PROD1/sysaux01.dbf",
"/dsg/oracle11/PROD1/undotbs01.dbf",
"/dsg/oracle11/PROD1/users01.dbf";
switchclonedatafileall;
}
executingMemoryScript
executingcommand:SETNEWNAME
renamedtempfile1to/dsg/oracle11/PROD1/temp01.dbfincontrolfile
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/sysaux01.dbfRECID=1STAMP=846167629
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/undotbs01.dbfRECID=2STAMP=846167630
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/users01.dbfRECID=3STAMP=846167630
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=1STAMP=846167629filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=2STAMP=846167630filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=3STAMP=846167630filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
Alterclonedatabaseopenresetlogs;
}
executingMemoryScript
databaseopened
FinishedDuplicateDbat29-APR-14[/code]
或者使用run块
清除掉环境变量
db_file_name_convert
log_file_name_convert
或者在rman中分配多通道
恢复过程如下:
六,总结及遇到的问题
1,在rman中恢复的时候总是报数据库名不一致,原来在同一个服务器上db_name不能相同且必须使用spfile
2,如果目标库与副本数据库的在线日志文件和数据文件路径不相同,则需要像本文一样配置db_file_name_convert和log_file_name_convert,否则会报错rman-06023
3,要是不配置db_file_name_convert和log_file_name_convert,可以通过如下命令达到相同的目的
4)如果备份文件保存在磁盘上,分配的通道越多则速度越快,如果备份文件在磁带上,最少指定设备数量个通道。
七,使用备份恢复辅助实例
1)在同一服务器上
先备份数据库
然后恢复
说明:在使用DUPLICATE恢复数据库的时候使用的也是源数据库备份目录
2)在不同的服务器
拷贝源数据库的备份集到和源数据库放置备份集相同的目录下,或者NFS挂载到相同的目录下再执行上面的操作
八,参考
三思笔记:Duplicate复制数据库之创建辅助实例
RMANDUPLICATE详解(原创)
1)创建审计文件目录
PROD1@dbrac1/dsg/oracle11$cd$ORACLE_BASE/admin PROD1@dbrac1/u01/app/oracle/admin$mkdir-pPROD1/adump
2)创建数据文件目录
mkdir-p/dsg/oracle11/PROD1
二,创建参数文件和密码文件
这里,复制主库的参数文件和密码文件,参数文件稍作修改
PROD1@dbrac1/dsg$exportORACLE_SID=PROD PROD@dbrac1/dsg$sqlplus/assysdba SQL*Plus:Release11.2.0.1.0ProductiononTueApr2914:00:542014 Copyright(c)1982,2009,Oracle.Allrightsreserved. Connectedto: OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-64bitProduction WiththePartitioning,RealApplicationClusters,OLAP,DataMining andRealApplicationTestingoptions SQL>createpfilefromspfile; Filecreated. SQL>exit DisconnectedfromOracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-64bitProduction WiththePartitioning,RealApplicationClusters,OLAP,DataMining andRealApplicationTestingoptions PROD@dbrac1/dsg$cd$ORACLE_HOME/dbs PROD@dbrac1/u01/app/oracle/product/11.2.0/dbs$cpinitPROD.orainitPROD1.ora #复制密码文件
PROD@dbrac1/u01/app/oracle/product/11.2.0/dbs$cporapwPRODorapwPROD1
修改参数文件
PROD1.__db_cache_size=272629760 PROD1.__java_pool_size=4194304 PROD1.__large_pool_size=4194304 PROD1.__oracle_base='/u01/app/oracle'#ORACLE_BASEsetfromenvironment PROD1.__pga_aggregate_target=3812622336 PROD1.__sga_target=536870912 PROD1.__shared_io_pool_size=0 PROD1.__shared_pool_size=243269632 PROD1.__streams_pool_size=0 *.audit_file_dest='/u01/app/oracle/admin/PROD1/adump' *.audit_trail='db' *.compatible='11.2.0.0.0' *.control_files='/dsg/oracle11/PROD1/control01.ctl','/dsg/oracle11/PROD1/control02.ctl' *.db_block_size=32768 *.DB_NAME='PROD1'###如果辅助实例在同一台服务器上,DB_NAME不能相同 *.DB_UNIQUE_NAME='PROD1' *.diagnostic_dest='/u01/app/oracle' *.dispatchers='(PROTOCOL=TCP)(SERVICE=PROD1XDB)' *.LOG_ARCHIVE_FORMAT='log%t_%s_%r.arc' *.open_cursors=300 *.pga_aggregate_target=3809476608 *.processes=150 *.REMOTE_LOGIN_PASSWORDFILE='EXCLUSIVE' *.sga_target=536870912 *.STANDBY_FILE_MANAGEMENT='AUTO' *.undo_tablespace='UNDOTBS1' ###下面两个参数可选,但是推荐使用,如果不使用可以在rman的run块中指定恢复的目录 *.DB_FILE_NAME_CONVERT='/dsg/oracle11/PROD','/dsg/oracle11/PROD1' *.LOG_FILE_NAME_CONVERT='/dsg/oracle11/PROD','/dsg/oracle11/PROD1'
三,配置监听及TNS
这里,使用静态监听
vilistener.ora (ADDRESS_LIST= (ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.70)(PORT=1521)) (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY))) SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBNAME=PROD) (SERVICE_NAME=PROD) (SID_NAME=PROD) (ORACLE_HOME=/u01/app/oracle/product/11.2.0) (PRESPAWN_MAX=20) (PRESPAWN_LIST= (PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1)) ) ) (SID_DESC= (GLOBAL_DBNAME=PROD1) (SERVICE_NAME=PROD1) (SID_NAME=PROD1) (ORACLE_HOME=/u01/app/oracle/product/11.2.0) (PRESPAWN_MAX=20) (PRESPAWN_LIST= (PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1)) ) ) )
tnsnames.ora添加
PROD= (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.70)(PORT=1521)) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=PROD) ) ) PROD1= (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.70)(PORT=1521)) (CONNECT_DATA= (SERVER=DEDICATED) (SERVICE_NAME=PROD1) ) )
####重启监听
lsnrctlreload
确认,
PROD@dbrac1/home/oracle$tnspingprod
TNSPingUtilityforLinux:Version11.2.0.1.0-Productionon29-APR-201414:15:53
Copyright(c)1997,2009,Oracle.Allrightsreserved.
Usedparameterfiles:
/u01/app/oracle/product/11.2.0/network/admin/sqlnet.ora
UsedTNSNAMESadaptertoresolvethealias
Attemptingtocontact(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.70)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=PROD)))
OK(40msec)
PROD@dbrac1/home/oracle$tnspingprod1
TNSPingUtilityforLinux:Version11.2.0.1.0-Productionon29-APR-201414:15:57
Copyright(c)1997,2009,Oracle.Allrightsreserved.
Usedparameterfiles:
/u01/app/oracle/product/11.2.0/network/admin/sqlnet.ora
UsedTNSNAMESadaptertoresolvethealias
Attemptingtocontact(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.70)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=PROD1)))
OK(0msec)
PROD@dbrac1/home/oracle$sqlplussys/oracle@prodassysdba
SQL*Plus:Release11.2.0.1.0ProductiononTueApr2914:16:102014
Copyright(c)1982,2009,Oracle.Allrightsreserved.
Connectedto:
OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-64bitProduction
WiththePartitioning,RealApplicationClusters,OLAP,DataMining
andRealApplicationTestingoptions
SQL>exit
DisconnectedfromOracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-64bitProduction
WiththePartitioning,RealApplicationClusters,OLAP,DataMining
andRealApplicationTestingoptions
PROD@dbrac1/home/oracle$sqlplussys/oracle@prod1assysdba
SQL*Plus:Release11.2.0.1.0ProductiononTueApr2914:16:162014
Copyright(c)1982,2009,Oracle.Allrightsreserved.
Connectedtoanidleinstance.
SQL>
四,启动辅助实例
启动辅助实例到nomount模式,也只能启动到nomount,一定要使用spfile参数文件
PROD@dbrac1/home/oracle$exportORACLE_SID=PROD1
SQL*Plus:Release11.2.0.1.0ProductiononTueApr2914:21:222014
Copyright(c)1982,2009,Oracle.Allrightsreserved.
Connectedtoanidleinstance.
SQL>createspfilefrompfile;
Filecreated.
SQL>startupnomount
ORACLEinstancestarted.
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
五,rman连接TARGET和AUXILLARY实例,采用全字符串连接
PROD1@dbrac1/home/oracle$rmantargetsys/oracle@PRODAUXILIARYsys/oracle@PROD1
RecoveryManager:Release11.2.0.1.0-ProductiononTueApr2914:26:122014
Copyright(c)1982,2009,Oracleand/oritsaffiliates.Allrightsreserved.
connectedtotargetdatabase:PROD(DBID=251192667)
connectedtoauxiliarydatabase:PROD1(notmounted)
RMAN>DUPLICATETARGETDATABASETOPROD1
2>FROMACTIVEDATABASE;
#####解释:
[code]FROMACTIVEDATABASE:The
DUPLICATEwillbecreateddirectlyfromthesourcedatafile,withoutanadditionalbackupstep.
StartingDuplicateDbat29-APR-14
usingtargetdatabasecontrolfileinsteadofrecoverycatalog
allocatedchannel:ORA_AUX_DISK_1
channelORA_AUX_DISK_1:SID=192devicetype=DISK
contentsofMemoryScript:
{
sqlclone"altersystemsetdb_name=
''PROD''comment=
''ModifiedbyRMANduplicate''scope=spfile";
sqlclone"altersystemsetdb_unique_name=
''PROD1''comment=
''ModifiedbyRMANduplicate''scope=spfile";
shutdowncloneimmediate;
startupcloneforcenomount
backupascopycurrentcontrolfileauxiliaryformat'/dsg/oracle11/PROD1/control01.ctl';
restoreclonecontrolfileto'/dsg/oracle11/PROD1/control02.ctl'from
'/dsg/oracle11/PROD1/control01.ctl';
alterclonedatabasemount;
}
executingMemoryScript
sqlstatement:altersystemsetdb_name=''PROD''comment=''ModifiedbyRMANduplicate''scope=spfile
sqlstatement:altersystemsetdb_unique_name=''PROD1''comment=''ModifiedbyRMANduplicate''scope=spfile
Oracleinstanceshutdown
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
Startingbackupat29-APR-14
allocatedchannel:ORA_DISK_1
channelORA_DISK_1:SID=136devicetype=DISK
channelORA_DISK_1:startingdatafilecopy
copyingcurrentcontrolfile
outputfilename=/u01/app/oracle/product/11.2.0/dbs/snapcf_PROD.ftag=TAG20140429T142805RECID=5STAMP=846167286
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:03
Finishedbackupat29-APR-14
Startingrestoreat29-APR-14
allocatedchannel:ORA_AUX_DISK_1
channelORA_AUX_DISK_1:SID=192devicetype=DISK
channelORA_AUX_DISK_1:copiedcontrolfilecopy
Finishedrestoreat29-APR-14
databasemounted
contentsofMemoryScript:
{
setnewnamefordatafile1to
"/dsg/oracle11/PROD1/system01.dbf";
setnewnamefordatafile2to
"/dsg/oracle11/PROD1/sysaux01.dbf";
setnewnamefordatafile3to
"/dsg/oracle11/PROD1/undotbs01.dbf";
setnewnamefordatafile4to
"/dsg/oracle11/PROD1/users01.dbf";
backupascopyreuse
datafile1auxiliaryformat
"/dsg/oracle11/PROD1/system01.dbf"datafile
2auxiliaryformat
"/dsg/oracle11/PROD1/sysaux01.dbf"datafile
3auxiliaryformat
"/dsg/oracle11/PROD1/undotbs01.dbf"datafile
4auxiliaryformat
"/dsg/oracle11/PROD1/users01.dbf";
sql'altersystemarchivelogcurrent';
}
executingMemoryScript
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
Startingbackupat29-APR-14
usingchannelORA_DISK_1
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00002name=/dsg/oracle11/PROD/sysaux01.dbf
outputfilename=/dsg/oracle11/PROD1/sysaux01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:03:05
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00001name=/dsg/oracle11/PROD/system01.dbf
outputfilename=/dsg/oracle11/PROD1/system01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:55
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00003name=/dsg/oracle11/PROD/undotbs01.dbf
outputfilename=/dsg/oracle11/PROD1/undotbs01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:35
channelORA_DISK_1:startingdatafilecopy
inputdatafilefilenumber=00004name=/dsg/oracle11/PROD/users01.dbf
outputfilename=/dsg/oracle11/PROD1/users01.dbftag=TAG20140429T142815
channelORA_DISK_1:datafilecopycomplete,elapsedtime:00:00:15
Finishedbackupat29-APR-14
sqlstatement:altersystemarchivelogcurrent
contentsofMemoryScript:
{
backupascopyreuse
archiveloglike"/dsg/oracle11/PROD/arch/log1_130_839354331.arc"auxiliaryformat
"/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arc";
catalogclonearchivelog"/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arc";
switchclonedatafileall;
}
executingMemoryScript
Startingbackupat29-APR-14
usingchannelORA_DISK_1
channelORA_DISK_1:startingarchivedlogcopy
inputarchivedlogthread=1sequence=130RECID=89STAMP=846167588
outputfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arcRECID=0STAMP=0
channelORA_DISK_1:archivedlogcopycomplete,elapsedtime:00:00:03
Finishedbackupat29-APR-14
catalogedarchivedlog
archivedlogfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arcRECID=88STAMP=846167592
datafile1switchedtodatafilecopy
inputdatafilecopyRECID=5STAMP=846167592filename=/dsg/oracle11/PROD1/system01.dbf
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=6STAMP=846167592filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=7STAMP=846167592filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=8STAMP=846167593filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
setuntilscn2097725;
recover
clonedatabase
deletearchivelog
;
}
executingMemoryScript
executingcommand:SETuntilclause
Startingrecoverat29-APR-14
usingchannelORA_AUX_DISK_1
startingmediarecovery
archivedlogforthread1withsequence130isalreadyondiskasfile/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arc
archivedlogfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_130_839354331.arcthread=1sequence=130
mediarecoverycomplete,elapsedtime:00:00:00
Finishedrecoverat29-APR-14
contentsofMemoryScript:
{
shutdowncloneimmediate;
startupclonenomount;
sqlclone"altersystemsetdb_name=
''PROD1''comment=
''ResettooriginalvaluebyRMAN''scope=spfile";
sqlclone"altersystemresetdb_unique_namescope=spfile";
shutdowncloneimmediate;
startupclonenomount;
}
executingMemoryScript
databasedismounted
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
sqlstatement:altersystemsetdb_name=''PROD1''comment=''ResettooriginalvaluebyRMAN''scope=spfile
sqlstatement:altersystemresetdb_unique_namescope=spfile
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
sqlstatement:CREATECONTROLFILEREUSESETDATABASE"PROD1"RESETLOGSARCHIVELOG
MAXLOGFILES16
MAXLOGMEMBERS3
MAXDATAFILES100
MAXINSTANCES8
MAXLOGHISTORY292
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03.log')SIZE50MREUSE
DATAFILE
'/dsg/oracle11/PROD1/system01.dbf'
CHARACTERSETZHS16GBK
contentsofMemoryScript:
{
setnewnamefortempfile1to
"/dsg/oracle11/PROD1/temp01.dbf";
switchclonetempfileall;
catalogclonedatafilecopy"/dsg/oracle11/PROD1/sysaux01.dbf",
"/dsg/oracle11/PROD1/undotbs01.dbf",
"/dsg/oracle11/PROD1/users01.dbf";
switchclonedatafileall;
}
executingMemoryScript
executingcommand:SETNEWNAME
renamedtempfile1to/dsg/oracle11/PROD1/temp01.dbfincontrolfile
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/sysaux01.dbfRECID=1STAMP=846167629
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/undotbs01.dbfRECID=2STAMP=846167630
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/users01.dbfRECID=3STAMP=846167630
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=1STAMP=846167629filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=2STAMP=846167630filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=3STAMP=846167630filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
Alterclonedatabaseopenresetlogs;
}
executingMemoryScript
databaseopened
FinishedDuplicateDbat29-APR-14[/code]
###查看数据库状态
PROD1@dbrac1/home/oracle$exportORACLE_SID=PROD1
PROD1@dbrac1/home/oracle$sqlplus/assysdba
SQL*Plus:Release11.2.0.1.0ProductiononTueApr2914:38:142014
Copyright(c)1982,2009,Oracle.Allrightsreserved.
Connectedto:
OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-64bitProduction
WiththePartitioning,RealApplicationClusters,OLAP,DataMining
andRealApplicationTestingoptions
SQL>selectinstance_name,statusfromv$instance;
INSTANCE_NAMESTATUS
----------------------------
PROD1OPEN
SQL>selectopen_modefromv$database;
OPEN_MODE
--------------------
READWRITE
或者使用run块
清除掉环境变量
db_file_name_convert
log_file_name_convert
RUN查看一下状态
{
#TheDUPLICATEcommandusesanautomaticsbtchannel.
#Becausethetargetdatafilesarespreadacrossmultipledirectories,
#runSETNEWNAMEratherthanDB_FILE_NAME_CONVERT
SETNEWNAMEFORDATAFILE1TO'/dsg/oracle11/PROD1/system01.dbf';
SETNEWNAMEFORDATAFILE2TO'/dsg/oracle11/PROD1/sysaux01.dbf';
SETNEWNAMEFORDATAFILE3TO'/dsg/oracle11/PROD1/undotbs01.dbf';
SETNEWNAMEFORDATAFILE4TO'/dsg/oracle11/PROD1/users01.dbf';
#Donotsetanewnamefordatafile7,becauseitisinthetoolstablespace,
#andyouareexcludingtoolsfromtheduplicatedatabase.
DUPLICATETARGETDATABASETOPROD1FROMACTIVEDATABASE
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE;
}
SQL>selectinstance_name,statusfromv$instance;
INSTANCE_NAMESTATUS
----------------------------
PROD1OPEN
SQL>selectmemberfromv$logfile;
MEMBER
--------------------------------------------------------------------------------
/dsg/oracle11/PROD1/redo03a.log
/dsg/oracle11/PROD1/redo03b.log
/dsg/oracle11/PROD1/redo02a.log
/dsg/oracle11/PROD1/redo02b.log
/dsg/oracle11/PROD1/redo01a.log
/dsg/oracle11/PROD1/redo01b.log
6rowsselected.
或者在rman中分配多通道
RUN
{
#TheDUPLICATEcommandusesanautomaticsbtchannel.
#Becausethetargetdatafilesarespreadacrossmultipledirectories,
#给源库分配通道
allocatechannelprmy1typedisk;
allocatechannelprmy2typedisk;
allocatechannelprmy3typedisk;
allocatechannelprmy4typedisk;
#给辅助实例分配通道
ALLOCATEAUXILIARYCHANNELaux1DEVICETYPEDISK;
ALLOCATEAUXILIARYCHANNELaux2DEVICETYPEDISK;
ALLOCATEAUXILIARYCHANNELaux3DEVICETYPEDISK;
#runSETNEWNAMEratherthanDB_FILE_NAME_CONVERT
SETNEWNAMEFORDATAFILE1TO'/dsg/oracle11/PROD1/system01.dbf';
SETNEWNAMEFORDATAFILE2TO'/dsg/oracle11/PROD1/sysaux01.dbf';
SETNEWNAMEFORDATAFILE3TO'/dsg/oracle11/PROD1/undotbs01.dbf';
SETNEWNAMEFORDATAFILE4TO'/dsg/oracle11/PROD1/users01.dbf';
SETNEWNAMEFORTEMPFILE1TO'/dsg/oracle11/PROD1/temp01.dbf';
#Donotsetanewnamefordatafile7,becauseitisinthetoolstablespace,
#andyouareexcludingtoolsfromtheduplicatedatabase.
DUPLICATETARGETDATABASETOPROD1FROMACTIVEDATABASE
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE;
}
恢复过程如下:
PROD1@dbrac1/dsg/oracle11/PROD1$rmantargetsys/oracle@PRODAUXILIARYsys/oracle@PROD1
RecoveryManager:Release11.2.0.1.0-ProductiononTueApr2915:37:252014
Copyright(c)1982,2009,Oracleand/oritsaffiliates.Allrightsreserved.
connectedtotargetdatabase:PROD(DBID=251192667)
connectedtoauxiliarydatabase:PROD1(notmounted)
RMAN>RUN
2>{
3>#TheDUPLICATEcommandusesanautomaticsbtchannel.
4>#Becausethetargetdatafilesarespreadacrossmultipledirectories,
5>
6>allocatechannelprmy1typedisk;
7>allocatechannelprmy2typedisk;
allocatechannelprmy3typedisk;
9>allocatechannelprmy4typedisk;
10>
ALLOCATEAUXILIARYCHANNELaux1DEVICETYPEDISK;
ALLOCATEAUXILIARYCHANNELaux2DEVICETYPEDISK;
ALLOCATEAUXILIARYCHANNELaux3DEVICETYPEDISK;
14>
15>#runSETNEWNAMEratherthanDB_FILE_NAME_CONVERT
16>SETNEWNAMEFORDATAFILE1TO'/dsg/oracle11/PROD1/system01.dbf';
17>SETNEWNAMEFORDATAFILE2TO'/dsg/oracle11/PROD1/sysaux01.dbf';
18>SETNEWNAMEFORDATAFILE3TO'/dsg/oracle11/PROD1/undotbs01.dbf';
19>SETNEWNAMEFORDATAFILE4TO'/dsg/oracle11/PROD1/users01.dbf';
20>SETNEWNAMEFORTEMPFILE1TO'/dsg/oracle11/PROD1/temp01.dbf';
21>#Donotsetanewnamefordatafile7,becauseitisinthetoolstablespace,
#andyouareexcludingtoolsfromtheduplicatedatabase.
23>DUPLICATETARGETDATABASETOPROD1FROMACTIVEDATABASE
24>LOGFILE
25>GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
26>GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
27>GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE;
28>}
usingtargetdatabasecontrolfileinsteadofrecoverycatalog
allocatedchannel:prmy1
channelprmy1:SID=198devicetype=DISK
allocatedchannel:prmy2
channelprmy2:SID=13devicetype=DISK
allocatedchannel:prmy3
channelprmy3:SID=136devicetype=DISK
allocatedchannel:prmy4
channelprmy4:SID=201devicetype=DISK
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=70devicetype=DISK
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
StartingDuplicateDbat29-APR-14
contentsofMemoryScript:
{
sqlclone"altersystemsetdb_name=
''PROD''comment=
''ModifiedbyRMANduplicate''scope=spfile";
sqlclone"altersystemsetdb_unique_name=
''PROD1''comment=
''ModifiedbyRMANduplicate''scope=spfile";
shutdowncloneimmediate;
startupcloneforcenomount
backupascopycurrentcontrolfileauxiliaryformat'/dsg/oracle11/PROD1/control01.ctl';
restoreclonecontrolfileto'/dsg/oracle11/PROD1/control02.ctl'from
'/dsg/oracle11/PROD1/control01.ctl';
alterclonedatabasemount;
}
executingMemoryScript
sqlstatement:altersystemsetdb_name=''PROD''comment=''ModifiedbyRMANduplicate''scope=spfile
sqlstatement:altersystemsetdb_unique_name=''PROD1''comment=''ModifiedbyRMANduplicate''scope=spfile
Oracleinstanceshutdown
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=69devicetype=DISK
Startingbackupat29-APR-14
channelprmy1:startingdatafilecopy
copyingcurrentcontrolfile
outputfilename=/u01/app/oracle/product/11.2.0/dbs/snapcf_PROD.ftag=TAG20140429T153754RECID=8STAMP=846171475
channelprmy1:datafilecopycomplete,elapsedtime:00:00:03
Finishedbackupat29-APR-14
Startingrestoreat29-APR-14
channelaux2:skipped,AUTOBACKUPalreadyfound
channelaux3:skipped,AUTOBACKUPalreadyfound
channelaux1:copiedcontrolfilecopy
Finishedrestoreat29-APR-14
databasemounted
contentsofMemoryScript:
{
setnewnamefordatafile1to
"/dsg/oracle11/PROD1/system01.dbf";
setnewnamefordatafile2to
"/dsg/oracle11/PROD1/sysaux01.dbf";
setnewnamefordatafile3to
"/dsg/oracle11/PROD1/undotbs01.dbf";
setnewnamefordatafile4to
"/dsg/oracle11/PROD1/users01.dbf";
backupascopyreuse
datafile1auxiliaryformat
"/dsg/oracle11/PROD1/system01.dbf"datafile
2auxiliaryformat
"/dsg/oracle11/PROD1/sysaux01.dbf"datafile
3auxiliaryformat
"/dsg/oracle11/PROD1/undotbs01.dbf"datafile
4auxiliaryformat
"/dsg/oracle11/PROD1/users01.dbf";
sql'altersystemarchivelogcurrent';
}
executingMemoryScript
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
Startingbackupat29-APR-14
channelprmy1:startingdatafilecopy
inputdatafilefilenumber=00002name=/dsg/oracle11/PROD/sysaux01.dbf
channelprmy2:startingdatafilecopy
inputdatafilefilenumber=00001name=/dsg/oracle11/PROD/system01.dbf
channelprmy3:startingdatafilecopy
inputdatafilefilenumber=00003name=/dsg/oracle11/PROD/undotbs01.dbf
channelprmy4:startingdatafilecopy
inputdatafilefilenumber=00004name=/dsg/oracle11/PROD/users01.dbf
outputfilename=/dsg/oracle11/PROD1/system01.dbftag=TAG20140429T153811
channelprmy2:datafilecopycomplete,elapsedtime:00:01:49
outputfilename=/dsg/oracle11/PROD1/undotbs01.dbftag=TAG20140429T153811
channelprmy3:datafilecopycomplete,elapsedtime:00:01:49
outputfilename=/dsg/oracle11/PROD1/users01.dbftag=TAG20140429T153811
channelprmy4:datafilecopycomplete,elapsedtime:00:01:48
outputfilename=/dsg/oracle11/PROD1/sysaux01.dbftag=TAG20140429T153811
channelprmy1:datafilecopycomplete,elapsedtime:00:02:39
Finishedbackupat29-APR-14
sqlstatement:altersystemarchivelogcurrent
contentsofMemoryScript:
{
backupascopyreuse
archiveloglike"/dsg/oracle11/PROD/arch/log1_132_839354331.arc"auxiliaryformat
"/u01/app/oracle/product/11.2.0/dbs/archlog1_132_839354331.arc";
catalogclonearchivelog"/u01/app/oracle/product/11.2.0/dbs/archlog1_132_839354331.arc";
switchclonedatafileall;
}
executingMemoryScript
Startingbackupat29-APR-14
channelprmy1:startingarchivedlogcopy
inputarchivedlogthread=1sequence=132RECID=93STAMP=846171653
outputfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_132_839354331.arcRECID=0STAMP=0
channelprmy1:archivedlogcopycomplete,elapsedtime:00:00:01
Finishedbackupat29-APR-14
catalogedarchivedlog
archivedlogfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_132_839354331.arcRECID=92STAMP=846171655
datafile1switchedtodatafilecopy
inputdatafilecopyRECID=8STAMP=846171655filename=/dsg/oracle11/PROD1/system01.dbf
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=9STAMP=846171655filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=10STAMP=846171655filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=11STAMP=846171655filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
setuntilscn2102602;
recover
clonedatabase
deletearchivelog
;
}
executingMemoryScript
executingcommand:SETuntilclause
Startingrecoverat29-APR-14
startingmediarecovery
archivedlogforthread1withsequence132isalreadyondiskasfile/u01/app/oracle/product/11.2.0/dbs/archlog1_132_839354331.arc
archivedlogfilename=/u01/app/oracle/product/11.2.0/dbs/archlog1_132_839354331.arcthread=1sequence=132
mediarecoverycomplete,elapsedtime:00:00:01
Finishedrecoverat29-APR-14
contentsofMemoryScript:
{
shutdowncloneimmediate;
startupclonenomount;
sqlclone"altersystemsetdb_name=
''PROD1''comment=
''ResettooriginalvaluebyRMAN''scope=spfile";
sqlclone"altersystemresetdb_unique_namescope=spfile";
shutdowncloneimmediate;
startupclonenomount;
}
executingMemoryScript
databasedismounted
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=69devicetype=DISK
sqlstatement:altersystemsetdb_name=''PROD1''comment=''ResettooriginalvaluebyRMAN''scope=spfile
sqlstatement:altersystemresetdb_unique_namescope=spfile
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=69devicetype=DISK
sqlstatement:CREATECONTROLFILEREUSESETDATABASE"PROD1"RESETLOGSARCHIVELOG
MAXLOGFILES16
MAXLOGMEMBERS3
MAXDATAFILES100
MAXINSTANCES8
MAXLOGHISTORY292
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE
DATAFILE
'/dsg/oracle11/PROD1/system01.dbf'
CHARACTERSETZHS16GBK
contentsofMemoryScript:
{
setnewnamefortempfile1to
"/dsg/oracle11/PROD1/temp01.dbf";
switchclonetempfileall;
catalogclonedatafilecopy"/dsg/oracle11/PROD1/sysaux01.dbf",
"/dsg/oracle11/PROD1/undotbs01.dbf",
"/dsg/oracle11/PROD1/users01.dbf";
switchclonedatafileall;
}
executingMemoryScript
executingcommand:SETNEWNAME
renamedtempfile1to/dsg/oracle11/PROD1/temp01.dbfincontrolfile
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/sysaux01.dbfRECID=1STAMP=846171697
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/undotbs01.dbfRECID=2STAMP=846171697
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/users01.dbfRECID=3STAMP=846171697
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=1STAMP=846171697filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=2STAMP=846171697filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=3STAMP=846171697filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
Alterclonedatabaseopenresetlogs;
}
executingMemoryScript
databaseopened
FinishedDuplicateDbat29-APR-14
releasedchannel:prmy1
releasedchannel:prmy2
releasedchannel:prmy3
releasedchannel:prmy4
releasedchannel:aux1
releasedchannel:aux2
releasedchannel:aux3
六,总结及遇到的问题
1,在rman中恢复的时候总是报数据库名不一致,原来在同一个服务器上db_name不能相同且必须使用spfile
RMAN-00571:===========================================================
RMAN-00569:===============ERRORMESSAGESTACKFOLLOWS===============
RMAN-00571:===========================================================
RMAN-03002:failureofDuplicateDbcommandat04/29/201415:21:38
RMAN-05520:databasenamemismatch,auxiliaryinstancehasPROD,commandspecifiedPROD1
2,如果目标库与副本数据库的在线日志文件和数据文件路径不相同,则需要像本文一样配置db_file_name_convert和log_file_name_convert,否则会报错rman-06023
3,要是不配置db_file_name_convert和log_file_name_convert,可以通过如下命令达到相同的目的
RUN
{
#TheDUPLICATEcommandusesanautomaticsbtchannel.
#Becausethetargetdatafilesarespreadacrossmultipledirectories,
#runSETNEWNAMEratherthanDB_FILE_NAME_CONVERT
SETNEWNAMEFORDATAFILE1TO'/oradata1/system01.dbf';
SETNEWNAMEFORDATAFILE2TO'/oradata2/undotbs01.dbf';
SETNEWNAMEFORDATAFILE3TO'/oradata3/cwmlite01.dbf';
SETNEWNAMEFORDATAFILE4TO'/oradata4/drsys01';
SETNEWNAMEFORDATAFILE5TO'/oradata5/example01.dbf';
SETNEWNAMEFORDATAFILE6TO'/oradata6/indx01.dbf';
#Donotsetanewnamefordatafile7,becauseitisinthetoolstablespace,
#andyouareexcludingtoolsfromtheduplicatedatabase.
SETNEWNAMEFORDATAFILE8TO'/oradata7/users01.dbf';
DUPLICATETARGETDATABASETOdupdb
SKIPTABLESPACEtools
LOGFILE
GROUP1('/duplogs/redo01a.log',
'/duplogs/redo01b.log')SIZE200KREUSE,
GROUP2('/duplogs/redo02a.log',
'/duplogs/redo02b.log')SIZE200KREUSE;
}
上面的命令还使用过SKIPTABLESPACE子句跳过指定表空间
另外还可以使用CONFIGUREAUXNAME命令重命名数据文件,复制步骤如下:
#configurethenewdesiredfilenames
CONFIGUREAUXNAMEFORDATAFILE1TO'F:\oracle\oradata\jssdup\system01.dbf';
CONFIGUREAUXNAMEFORDATAFILE2TO'F:\oracle\oradata\jssdup\undotbs01.dbf';
#...addmoreCONFIGUREAUXNAMEcommandsasneeded
不过需要注意的是,duplicate执行完之后,推荐清除CONFIGUREAUXNAME。这样就不会对未来的
类似操作造成影响。
#clearspecifiedauxiliarynamesforthedatafiles
CONFIGUREAUXNAMEFORDATAFILE1CLEAR;
CONFIGUREAUXNAMEFORDATAFILE2CLEAR;
如果副本数据库与目标库不在同一台机器上,并且副本数据库的在线日志文件路径与目标库相同,NOFILENAMECHECK
则运行duplicate命令时必须指定NOFILENAMECHECK参数以避免冲突提示。此处oracle表现的很傻,它不知道你要恢复的路径是在另一台机器上,它只是认为要恢复到的路径怎么跟目标数据库表现的一样呢?会不会是要覆盖目标数据库啊,为了避免这种情形,于是它就报错。所以一旦异机恢复,并且路径相同,那么你必须通过指定NOFILENAMECHECK来避免oracle的自动识别。这里NOFILENAMECHECK不是必须的
4)如果备份文件保存在磁盘上,分配的通道越多则速度越快,如果备份文件在磁带上,最少指定设备数量个通道。
七,使用备份恢复辅助实例
1)在同一服务器上
先备份数据库
backupdatabaseplusarchivelog;
然后恢复
RUN
{
#TheDUPLICATEcommandusesanautomaticsbtchannel.
#Becausethetargetdatafilesarespreadacrossmultipledirectories,
allocatechannelprmy1typedisk;
allocatechannelprmy2typedisk;
allocatechannelprmy3typedisk;
allocatechannelprmy4typedisk;
ALLOCATEAUXILIARYCHANNELaux1DEVICETYPEDISK;
ALLOCATEAUXILIARYCHANNELaux2DEVICETYPEDISK;
ALLOCATEAUXILIARYCHANNELaux3DEVICETYPEDISK;
#runSETNEWNAMEratherthanDB_FILE_NAME_CONVERT
SETNEWNAMEFORDATAFILE1TO'/dsg/oracle11/PROD1/system01.dbf';
SETNEWNAMEFORDATAFILE2TO'/dsg/oracle11/PROD1/sysaux01.dbf';
SETNEWNAMEFORDATAFILE3TO'/dsg/oracle11/PROD1/undotbs01.dbf';
SETNEWNAMEFORDATAFILE4TO'/dsg/oracle11/PROD1/users01.dbf';
SETNEWNAMEFORTEMPFILE1TO'/dsg/oracle11/PROD1/temp01.dbf';
#Donotsetanewnamefordatafile7,becauseitisinthetoolstablespace,
#andyouareexcludingtoolsfromtheduplicatedatabase.
DUPLICATETARGETDATABASETOPROD1
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE;
}
说明:在使用DUPLICATE恢复数据库的时候使用的也是源数据库备份目录
PROD1@dbrac1/dsg/oracle11/PROD1$rmantargetsys/oracle@PRODAUXILIARYsys/oracle@PROD1
RecoveryManager:Release11.2.0.1.0-ProductiononTueApr2916:54:022014
Copyright(c)1982,2009,Oracleand/oritsaffiliates.Allrightsreserved.
connectedtotargetdatabase:PROD(DBID=251192667)
connectedtoauxiliarydatabase:PROD1(notmounted)
RMAN>RUN
2>{
#TheDUPLICATEcommandusesanautomaticsbtchannel.
4>#Becausethetargetdatafilesarespreadacrossmultipledirectories,
5>
6>allocatechannelprmy1typedisk;
7>allocatechannelprmy2typedisk;
allocatechannelprmy3typedisk;
9>allocatechannelprmy4typedisk;
10>
11>ALLOCATEAUXILIARYCHANNELaux1DEVICETYPEDISK;
12>ALLOCATEAUXILIARYCHANNELaux2DEVICETYPEDISK;
13>ALLOCATEAUXILIARYCHANNELaux3DEVICETYPEDISK;
14>
15>#runSETNEWNAMEratherthanDB_FILE_NAME_CONVERT
16>SETNEWNAMEFORDATAFILE1TO'/dsg/oracle11/PROD1/system01.dbf';
17>SETNEWNAMEFORDATAFILE2TO'/dsg/oracle11/PROD1/sysaux01.dbf';
18>SETNEWNAMEFORDATAFILE3TO'/dsg/oracle11/PROD1/undotbs01.dbf';
19>SETNEWNAMEFORDATAFILE4TO'/dsg/oracle11/PROD1/users01.dbf';
20>SETNEWNAMEFORTEMPFILE1TO'/dsg/oracle11/PROD1/temp01.dbf';
#Donotsetanewnamefordatafile7,becauseitisinthetoolstablespace,
22>#andyouareexcludingtoolsfromtheduplicatedatabase.
DUPLICATETARGETDATABASETOPROD1
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE;
}
usingtargetdatabasecontrolfileinsteadofrecoverycatalog
allocatedchannel:prmy1
channelprmy1:SID=73devicetype=DISK
allocatedchannel:prmy2
channelprmy2:SID=136devicetype=DISK
allocatedchannel:prmy3
channelprmy3:SID=201devicetype=DISK
allocatedchannel:prmy4
channelprmy4:SID=11devicetype=DISK
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=70devicetype=DISK
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
StartingDuplicateDbat29-APR-14
contentsofMemoryScript:
{
sqlclone"altersystemsetdb_name=
''PROD''comment=
''ModifiedbyRMANduplicate''scope=spfile";
sqlclone"altersystemsetdb_unique_name=
''PROD1''comment=
''ModifiedbyRMANduplicate''scope=spfile";
shutdowncloneimmediate;
startupcloneforcenomount
restorecloneprimarycontrolfile;
alterclonedatabasemount;
}
executingMemoryScript
sqlstatement:altersystemsetdb_name=''PROD''comment=''ModifiedbyRMANduplicate''scope=spfile
sqlstatement:altersystemsetdb_unique_name=''PROD1''comment=''ModifiedbyRMANduplicate''scope=spfile
Oracleinstanceshutdown
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=69devicetype=DISK
Startingrestoreat29-APR-14
channelaux1:startingdatafilebackupsetrestore
channelaux1:restoringcontrolfile
channelaux1:readingfrombackuppiece/u01/app/oracle/product/11.2.0/dbs/15p6v6sl_1_1
channelaux1:piecehandle=/u01/app/oracle/product/11.2.0/dbs/15p6v6sl_1_1tag=TAG20140429T163649
channelaux1:restoredbackuppiece1
channelaux1:restorecomplete,elapsedtime:00:00:03
outputfilename=/dsg/oracle11/PROD1/control01.ctl
outputfilename=/dsg/oracle11/PROD1/control02.ctl
Finishedrestoreat29-APR-14
databasemounted
contentsofMemoryScript:
{
setuntilscn2106686;
setnewnamefordatafile1to
"/dsg/oracle11/PROD1/system01.dbf";
setnewnamefordatafile2to
"/dsg/oracle11/PROD1/sysaux01.dbf";
setnewnamefordatafile3to
"/dsg/oracle11/PROD1/undotbs01.dbf";
setnewnamefordatafile4to
"/dsg/oracle11/PROD1/users01.dbf";
restore
clonedatabase
;
}
executingMemoryScript
executingcommand:SETuntilclause
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
executingcommand:SETNEWNAME
Startingrestoreat29-APR-14
channelaux1:startingdatafilebackupsetrestore
channelaux1:specifyingdatafile(s)torestorefrombackupset
channelaux1:restoringdatafile00001to/dsg/oracle11/PROD1/system01.dbf
channelaux1:restoringdatafile00002to/dsg/oracle11/PROD1/sysaux01.dbf
channelaux1:restoringdatafile00003to/dsg/oracle11/PROD1/undotbs01.dbf
channelaux1:restoringdatafile00004to/dsg/oracle11/PROD1/users01.dbf
channelaux1:readingfrombackuppiece/u01/app/oracle/product/11.2.0/dbs/14p6v6p1_1_1
channelaux1:piecehandle=/u01/app/oracle/product/11.2.0/dbs/14p6v6p1_1_1tag=TAG20140429T163649
channelaux1:restoredbackuppiece1
channelaux1:restorecomplete,elapsedtime:00:01:55
Finishedrestoreat29-APR-14
contentsofMemoryScript:
{
switchclonedatafileall;
}
executingMemoryScript
datafile1switchedtodatafilecopy
inputdatafilecopyRECID=13STAMP=846176193filename=/dsg/oracle11/PROD1/system01.dbf
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=14STAMP=846176193filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=15STAMP=846176194filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=16STAMP=846176194filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
setuntilscn2106686;
recover
clonedatabase
deletearchivelog
;
}
executingMemoryScript
executingcommand:SETuntilclause
Startingrecoverat29-APR-14
startingmediarecovery
archivedlogforthread1withsequence134isalreadyondiskasfile/dsg/oracle11/PROD/arch/log1_134_839354331.arc
archivedlogfilename=/dsg/oracle11/PROD/arch/log1_134_839354331.arcthread=1sequence=134
mediarecoverycomplete,elapsedtime:00:00:01
Finishedrecoverat29-APR-14
contentsofMemoryScript:
{
shutdowncloneimmediate;
startupclonenomount;
sqlclone"altersystemsetdb_name=
''PROD1''comment=
''ResettooriginalvaluebyRMAN''scope=spfile";
sqlclone"altersystemresetdb_unique_namescope=spfile";
shutdowncloneimmediate;
startupclonenomount;
}
executingMemoryScript
databasedismounted
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=69devicetype=DISK
sqlstatement:altersystemsetdb_name=''PROD1''comment=''ResettooriginalvaluebyRMAN''scope=spfile
sqlstatement:altersystemresetdb_unique_namescope=spfile
Oracleinstanceshutdown
connectedtoauxiliarydatabase(notstarted)
Oracleinstancestarted
TotalSystemGlobalArea534462464bytes
FixedSize2215064bytes
VariableSize251659112bytes
DatabaseBuffers272629760bytes
RedoBuffers7958528bytes
allocatedchannel:aux1
channelaux1:SID=192devicetype=DISK
allocatedchannel:aux2
channelaux2:SID=6devicetype=DISK
allocatedchannel:aux3
channelaux3:SID=69devicetype=DISK
sqlstatement:CREATECONTROLFILEREUSESETDATABASE"PROD1"RESETLOGSARCHIVELOG
MAXLOGFILES16
MAXLOGMEMBERS3
MAXDATAFILES100
MAXINSTANCES8
MAXLOGHISTORY292
LOGFILE
GROUP1('/dsg/oracle11/PROD1/redo01a.log','/dsg/oracle11/PROD1/redo01b.log')SIZE50MREUSE,
GROUP2('/dsg/oracle11/PROD1/redo02a.log','/dsg/oracle11/PROD1/redo02b.log')SIZE50MREUSE,
GROUP3('/dsg/oracle11/PROD1/redo03a.log','/dsg/oracle11/PROD1/redo03b.log')SIZE50MREUSE
DATAFILE
'/dsg/oracle11/PROD1/system01.dbf'
CHARACTERSETZHS16GBK
contentsofMemoryScript:
{
setnewnamefortempfile1to
"/dsg/oracle11/PROD1/temp01.dbf";
switchclonetempfileall;
catalogclonedatafilecopy"/dsg/oracle11/PROD1/sysaux01.dbf",
"/dsg/oracle11/PROD1/undotbs01.dbf",
"/dsg/oracle11/PROD1/users01.dbf";
switchclonedatafileall;
}
executingMemoryScript
executingcommand:SETNEWNAME
renamedtempfile1to/dsg/oracle11/PROD1/temp01.dbfincontrolfile
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/sysaux01.dbfRECID=1STAMP=846176234
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/undotbs01.dbfRECID=2STAMP=846176234
catalogeddatafilecopy
datafilecopyfilename=/dsg/oracle11/PROD1/users01.dbfRECID=3STAMP=846176234
datafile2switchedtodatafilecopy
inputdatafilecopyRECID=1STAMP=846176234filename=/dsg/oracle11/PROD1/sysaux01.dbf
datafile3switchedtodatafilecopy
inputdatafilecopyRECID=2STAMP=846176234filename=/dsg/oracle11/PROD1/undotbs01.dbf
datafile4switchedtodatafilecopy
inputdatafilecopyRECID=3STAMP=846176234filename=/dsg/oracle11/PROD1/users01.dbf
contentsofMemoryScript:
{
Alterclonedatabaseopenresetlogs;
}
executingMemoryScript
databaseopened
FinishedDuplicateDbat29-APR-14
releasedchannel:prmy1
releasedchannel:prmy2
releasedchannel:prmy3
releasedchannel:prmy4
releasedchannel:aux1
releasedchannel:aux2
releasedchannel:aux3
2)在不同的服务器
拷贝源数据库的备份集到和源数据库放置备份集相同的目录下,或者NFS挂载到相同的目录下再执行上面的操作
八,参考
相关文章推荐
- Duplicate复制数据库之创建辅助实例
- Duplicate复制数据库之创建辅助实例
- Duplicate复制数据库之创建辅助实例
- RMAN高级应用之Duplicate复制数据库(2)辅助实例
- RMAN创建辅助实例(副本数据库) - 不同环境下的复制流程
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- Oracle 11gR2 使用RMAN Duplicate复制数据库
- 用rman创建辅助数据库duplicate
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- RMAN创建辅助实例(副本数据库)
- Data Guard——使用 RMAN 创建单实例物理(physical) standby 数据库
- Oracle 11gR2 使用RMAN Duplicate复制数据库
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- 迁移数据库——11gR2 使用 RMAN duplicate from active database 复制数据库
- Oracle 11gR2 使用 RMAN duplicate from active database 复制数据库
- Oracle 11g新特性之 - 使用RMAN复制数据库-视频分享
- 使用 RMAN DUPLICATE...FROM ACTIVE DATABASE 创建物理备用数据库的分步指南