您的位置:首页 > 数据库

11g 使用rman duplicate复制数据库,创建辅助实例

2014-04-29 15:57 585 查看
一,创建所需目录

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

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实例,采用全字符串连接

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
DUPLICATE
willbecreateddirectlyfromthesourcedatafile,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复制数据库之创建辅助实例

RMANDUPLICATE详解(原创)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: