如何使用RMAN对CDB执行按时间点恢复
这篇文章给大家分享的是有关如何使用RMAN对CDB执行按时间点恢复的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
使用RMAN对CDB和PDB执行按时间点恢复
RMAN能够对CDB与PDB执行按时间点恢复操作。但是PDB只能使用RMAN来执行按时间点恢复。如是没有使用恢复目录数据库,建议启用自动控制文件备份。否则当对PDB执行按时间点恢复时,当RMAN需要增加与删除undo数据文件时不能有效的执行。
PDB按时间点恢复与快速恢复区
当对PDB执行数据库按时间点恢复时,对于这个PDB所有的数据文件都将被执行恢复操作。然而,为了将PDB恢复到指定的时间点,RMAN在恢复目标时间点也是需要有UNDO表空间存在的。因为undo表空间是被所有PDB所共享的,它不能被恢复。RMAN会将root中的undo,system与sysaux表空间还原到辅助实例中,然后使用undo信息来将pdb恢复到指定的时间点。如果配置了快速恢复区,Oracle将会使用它作为辅助实例的存储目录。如果快速恢复区没有被配置,那么必须使用auxiliary destination子句来指定辅助实例数据库文件的存储目录。确保在快速恢复区有足够的空间可以用来还原root表空间与undo表空间。如果快速恢复区没有足够的空间,可以通过使用auxiliary destination子句来指定其它的目录。
对CDB执行数据库按时间点恢复
1.登录数据库记录当前SCN号,然后将表t1中的数据删除。
SQL>connjy/jy@jypdbConnected.SQL>SELECTCURRENT_SCNFROMV$DATABASE;CURRENT_SCN-----------6041183SQL>altersessionsetnls_date_format='yyyy-mm-ddhh34:mi:ss';Sessionaltered.SQL>selectsysdatefromdual;SYSDATE-------------------2017-12-1818:28:30SQL>selectcount(*)fromt1;COUNT(*)----------39SQL>truncatetablet1;Tabletruncated.SQL>selectcount(*)fromt1;COUNT(*)----------0
2.如果使用时间表达式来代替目标SCN,那么在调用RMAN之前设置时间格式环境变量
[oracle@jytest1~]$exportNLS_DATE_FORMAT='yyyy-mm-ddhh34:mi:ss'
3.使用RMAN连接到root容器
[oracle@jytest1~]$rmantarget/catalogrco/abcd@jypdb_173RecoveryManager:Release12.2.0.1.0-ProductiononMonDec1818:32:002017Copyright(c)1982,2017,Oracleand/oritsaffiliates.Allrightsreserved.connectedtotargetdatabase:JY(DBID=979425723)connectedtorecoverycatalogdatabase
4.将CDB重启到mount状态
RMAN>shutdownimmediatestartingfullresyncofrecoverycatalogfullresynccompletedatabasecloseddatabasedismountedOracleinstanceshutdownRMAN>startupmountconnectedtotargetdatabase(notstarted)OracleinstancestarteddatabasemountedTotalSystemGlobalArea6442450944bytesFixedSize8807168bytesVariableSize1895828736bytesDatabaseBuffers4529848320bytesRedoBuffers7966720bytesstartingfullresyncofrecoverycatalogfullresynccomplete
5.使用RUN块来执行以下操作
a.对于数据库按时间点鶋,使用set until来指定恢复的目标时间,scn或日志序列号,或者使用set to来指定还原点。如果指定时间那么使用环境变量nls_lang与nls_date_format中所指定的日期格式。
b.如果RMAN没有配置自动通道,那么需要手动分配磁盘与磁带通道。
c.还原与恢复CDB
下面的命令将CDB恢复到SCN=6041183所在的状态
RMAN>run2>{3>setuntilscn6041183;4>restoredatabase;5>recoverdatabase;6>}executingcommand:SETuntilclauseStartingrestoreat2017-12-1818:46:50flashingbackcontrolfiletoSCN6041183allocatedchannel:ORA_DISK_1channelORA_DISK_1:SID=764instance=jy1devicetype=DISKskippingdatafile5;alreadyrestoredtofile+DATA/JY/5F9AA264B21F3ED9E053AB828A0A6088/DATAFILE/system.256.962209675skippingdatafile6;alreadyrestoredtofile+DATA/JY/5F9AA264B21F3ED9E053AB828A0A6088/DATAFILE/sysaux.270.962209675skippingdatafile8;alreadyrestoredtofile+DATA/JY/5F9AA264B21F3ED9E053AB828A0A6088/DATAFILE/undotbs1.296.962209675channelORA_DISK_1:startingdatafilebackupsetrestorechannelORA_DISK_1:specifyingdatafile(s)torestorefrombackupsetchannelORA_DISK_1:restoringdatafile00001to+DATA/JY/DATAFILE/system.317.962209603channelORA_DISK_1:restoringdatafile00003to+DATA/JY/DATAFILE/sysaux.298.962209605channelORA_DISK_1:restoringdatafile00004to+DATA/JY/DATAFILE/undotbs1.277.962209605channelORA_DISK_1:restoringdatafile00007to+DATA/JY/DATAFILE/users.301.962209605channelORA_DISK_1:restoringdatafile00009to+DATA/JY/DATAFILE/undotbs2.312.962209605channelORA_DISK_1:readingfrombackuppiece+TEST/rman_backup/jy_979425723_962563410_10slv3ai_1_1channelORA_DISK_1:piecehandle=+TEST/rman_backup/jy_979425723_962563410_10slv3ai_1_1tag=TAG20171212T184328channelORA_DISK_1:restoredbackuppiece1channelORA_DISK_1:restorecomplete,elapsedtime:00:01:05channelORA_DISK_1:startingdatafilebackupsetrestorechannelORA_DISK_1:specifyingdatafile(s)torestorefrombackupsetchannelORA_DISK_1:restoringdatafile00010to+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/system.271.962209649channelORA_DISK_1:restoringdatafile00011to+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/sysaux.316.962209649channelORA_DISK_1:restoringdatafile00012to+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/undotbs1.264.962209649channelORA_DISK_1:restoringdatafile00013to+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/undo_2.268.962209649channelORA_DISK_1:restoringdatafile00014to+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/users.278.962209649channelORA_DISK_1:restoringdatafile00015to+DATA/JY/5F9AC6865E87549FE053AB828A0ADE94/DATAFILE/test.275.962210609channelORA_DISK_1:readingfrombackuppiece+TEST/rman_backup/jy_979425723_962563516_11slv3ds_1_1channelORA_DISK_1:piecehandle=+TEST/rman_backup/jy_979425723_962563516_11slv3ds_1_1tag=TAG20171212T184328channelORA_DISK_1:restoredbackuppiece1channelORA_DISK_1:restorecomplete,elapsedtime:00:00:35channelORA_DISK_1:startingdatafilebackupsetrestorechannelORA_DISK_1:specifyingdatafile(s)torestorefrombackupsetchannelORA_DISK_1:restoringdatafile00016to+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/system.260.962469409channelORA_DISK_1:restoringdatafile00017to+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/sysaux.259.962469409channelORA_DISK_1:restoringdatafile00018to+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/undotbs1.265.962469409channelORA_DISK_1:restoringdatafile00019to+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/undo_2.266.962469409channelORA_DISK_1:restoringdatafile00020to+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/users.267.962469409channelORA_DISK_1:restoringdatafile00021to+DATA/JY/600D6F56DEB669CCE053AB828A0AAB7E/DATAFILE/test.269.962469409channelORA_DISK_1:readingfrombackuppiece+TEST/rman_backup/jy_979425723_962563551_12slv3ev_1_1channelORA_DISK_1:piecehandle=+TEST/rman_backup/jy_979425723_962563551_12slv3ev_1_1tag=TAG20171212T184328channelORA_DISK_1:restoredbackuppiece1channelORA_DISK_1:restorecomplete,elapsedtime:00:00:35Finishedrestoreat2017-12-1818:49:09Startingrecoverat2017-12-1818:49:11usingchannelORA_DISK_1appliedofflinerangetodatafile00010offlinerangeRECID=80STAMP=963072332appliedofflinerangetodatafile00011offlinerangeRECID=79STAMP=963072332appliedofflinerangetodatafile00012offlinerangeRECID=78STAMP=963072332appliedofflinerangetodatafile00013offlinerangeRECID=77STAMP=963072332appliedofflinerangetodatafile00014offlinerangeRECID=76STAMP=963072332appliedofflinerangetodatafile00015offlinerangeRECID=75STAMP=963072332appliedofflinerangetodatafile00016offlinerangeRECID=86STAMP=963072332appliedofflinerangetodatafile00017offlinerangeRECID=85STAMP=963072332appliedofflinerangetodatafile00018offlinerangeRECID=84STAMP=963072332appliedofflinerangetodatafile00019offlinerangeRECID=83STAMP=963072332appliedofflinerangetodatafile00020offlinerangeRECID=82STAMP=963072332appliedofflinerangetodatafile00021offlinerangeRECID=81STAMP=963072332startingmediarecoveryarchivedlogforthread1withsequence34isalreadyondiskasfile+TEST/arch/1_34_961976319.dbfarchivedlogforthread1withsequence35isalreadyondiskasfile+TEST/arch/1_35_961976319.dbfarchivedlogforthread1withsequence36isalreadyondiskasfile+TEST/arch/1_36_961976319.dbfarchivedlogforthread1withsequence37isalreadyondiskasfile+TEST/arch/1_37_961976319.dbfarchivedlogforthread1withsequence38isalreadyondiskasfile+TEST/arch/1_38_961976319.dbfarchivedlogforthread1withsequence39isalreadyondiskasfile+TEST/arch/1_39_961976319.dbfarchivedlogforthread1withsequence40isalreadyondiskasfile+TEST/arch/1_40_961976319.dbfarchivedlogforthread1withsequence41isalreadyondiskasfile+TEST/arch/1_41_961976319.dbfarchivedlogforthread1withsequence42isalreadyondiskasfile+TEST/arch/1_42_961976319.dbfarchivedlogforthread1withsequence43isalreadyondiskasfile+TEST/arch/1_43_961976319.dbfarchivedlogforthread1withsequence44isalreadyondiskasfile+TEST/arch/1_44_961976319.dbfarchivedlogforthread1withsequence45isalreadyondiskasfile+TEST/arch/1_45_961976319.dbfarchivedlogforthread1withsequence46isalreadyondiskasfile+TEST/arch/1_46_961976319.dbfarchivedlogforthread1withsequence47isalreadyondiskasfile+TEST/arch/1_47_961976319.dbfarchivedlogforthread1withsequence48isalreadyondiskasfile+TEST/arch/1_48_961976319.dbfarchivedlogforthread1withsequence49isalreadyondiskasfile+TEST/arch/1_49_961976319.dbfarchivedlogforthread1withsequence50isalreadyondiskasfile+TEST/arch/1_50_961976319.dbfarchivedlogforthread1withsequence51isalreadyondiskasfile+TEST/arch/1_51_961976319.dbfarchivedlogforthread1withsequence52isalreadyondiskasfile+DATA/JY/ONLINELOG/group_2.302.961976321archivedlogforthread1withsequence53isalreadyondiskasfile+DATA/JY/ONLINELOG/group_1.261.961976319archivedlogforthread2withsequence28isalreadyondiskasfile+TEST/arch/2_28_961976319.dbfarchivedlogforthread2withsequence29isalreadyondiskasfile+TEST/arch/2_29_961976319.dbfarchivedlogforthread2withsequence30isalreadyondiskasfile+TEST/arch/2_30_961976319.dbfarchivedlogforthread2withsequence31isalreadyondiskasfile+TEST/arch/2_31_961976319.dbfarchivedlogforthread2withsequence32isalreadyondiskasfile+TEST/arch/2_32_961976319.dbfarchivedlogforthread2withsequence33isalreadyondiskasfile+TEST/arch/2_33_961976319.dbfarchivedlogforthread2withsequence34isalreadyondiskasfile+TEST/arch/2_34_961976319.dbfarchivedlogforthread2withsequence35isalreadyondiskasfile+TEST/arch/2_35_961976319.dbfarchivedlogforthread2withsequence36isalreadyondiskasfile+TEST/arch/2_36_961976319.dbfarchivedlogforthread2withsequence37isalreadyondiskasfile+TEST/arch/2_37_961976319.dbfarchivedlogforthread2withsequence38isalreadyondiskasfile+TEST/arch/2_38_961976319.dbfarchivedlogforthread2withsequence39isalreadyondiskasfile+TEST/arch/2_39_961976319.dbfarchivedlogforthread2withsequence40isalreadyondiskasfile+TEST/arch/2_40_961976319.dbfarchivedlogforthread2withsequence41isalreadyondiskasfile+TEST/arch/2_41_961976319.dbfarchivedlogforthread2withsequence42isalreadyondiskasfile+TEST/arch/2_42_961976319.dbfarchivedlogforthread2withsequence43isalreadyondiskasfile+TEST/arch/2_43_961976319.dbfarchivedlogforthread2withsequence44isalreadyondiskasfile+TEST/arch/2_44_961976319.dbfarchivedlogforthread2withsequence45isalreadyondiskasfile+TEST/arch/2_45_961976319.dbfarchivedlogforthread2withsequence46isalreadyondiskasfile+TEST/arch/2_46_961976319.dbfarchivedlogforthread2withsequence47isalreadyondiskasfile+TEST/arch/2_47_961976319.dbfarchivedlogforthread2withsequence48isalreadyondiskasfile+TEST/arch/2_48_961976319.dbfarchivedlogforthread2withsequence49isalreadyondiskasfile+TEST/arch/2_49_961976319.dbfarchivedlogforthread2withsequence50isalreadyondiskasfile+TEST/arch/2_50_961976319.dbfarchivedlogforthread2withsequence51isalreadyondiskasfile+TEST/arch/2_51_961976319.dbfarchivedlogforthread2withsequence52isalreadyondiskasfile+DATA/JY/ONLINELOG/group_4.262.961976705archivedlogforthread2withsequence53isalreadyondiskasfile+DATA/JY/ONLINELOG/group_3.263.961976697archivedlogfilename=+TEST/arch/1_34_961976319.dbfthread=1sequence=34archivedlogfilename=+TEST/arch/2_28_961976319.dbfthread=2sequence=28archivedlogfilename=+TEST/arch/1_35_961976319.dbfthread=1sequence=35archivedlogfilename=+TEST/arch/2_29_961976319.dbfthread=2sequence=29archivedlogfilename=+TEST/arch/1_36_961976319.dbfthread=1sequence=36archivedlogfilename=+TEST/arch/2_30_961976319.dbfthread=2sequence=30archivedlogfilename=+TEST/arch/2_31_961976319.dbfthread=2sequence=31archivedlogfilename=+TEST/arch/1_37_961976319.dbfthread=1sequence=37archivedlogfilename=+TEST/arch/2_32_961976319.dbfthread=2sequence=32archivedlogfilename=+TEST/arch/1_38_961976319.dbfthread=1sequence=38archivedlogfilename=+TEST/arch/2_33_961976319.dbfthread=2sequence=33archivedlogfilename=+TEST/arch/1_39_961976319.dbfthread=1sequence=39archivedlogfilename=+TEST/arch/2_34_961976319.dbfthread=2sequence=34archivedlogfilename=+TEST/arch/1_40_961976319.dbfthread=1sequence=40archivedlogfilename=+TEST/arch/2_35_961976319.dbfthread=2sequence=35archivedlogfilename=+TEST/arch/1_41_961976319.dbfthread=1sequence=41archivedlogfilename=+TEST/arch/2_36_961976319.dbfthread=2sequence=36archivedlogfilename=+TEST/arch/1_42_961976319.dbfthread=1sequence=42archivedlogfilename=+TEST/arch/2_37_961976319.dbfthread=2sequence=37archivedlogfilename=+TEST/arch/2_38_961976319.dbfthread=2sequence=38archivedlogfilename=+TEST/arch/1_43_961976319.dbfthread=1sequence=43archivedlogfilename=+TEST/arch/2_39_961976319.dbfthread=2sequence=39archivedlogfilename=+TEST/arch/1_44_961976319.dbfthread=1sequence=44archivedlogfilename=+TEST/arch/2_40_961976319.dbfthread=2sequence=40archivedlogfilename=+TEST/arch/1_45_961976319.dbfthread=1sequence=45archivedlogfilename=+TEST/arch/2_41_961976319.dbfthread=2sequence=41archivedlogfilename=+TEST/arch/1_46_961976319.dbfthread=1sequence=46archivedlogfilename=+TEST/arch/2_42_961976319.dbfthread=2sequence=42archivedlogfilename=+TEST/arch/2_43_961976319.dbfthread=2sequence=43archivedlogfilename=+TEST/arch/1_47_961976319.dbfthread=1sequence=47archivedlogfilename=+TEST/arch/2_44_961976319.dbfthread=2sequence=44archivedlogfilename=+TEST/arch/2_45_961976319.dbfthread=2sequence=45archivedlogfilename=+TEST/arch/1_48_961976319.dbfthread=1sequence=48archivedlogfilename=+TEST/arch/2_46_961976319.dbfthread=2sequence=46archivedlogfilename=+TEST/arch/1_49_961976319.dbfthread=1sequence=49archivedlogfilename=+TEST/arch/2_47_961976319.dbfthread=2sequence=47archivedlogfilename=+TEST/arch/2_48_961976319.dbfthread=2sequence=48archivedlogfilename=+TEST/arch/1_50_961976319.dbfthread=1sequence=50archivedlogfilename=+TEST/arch/2_49_961976319.dbfthread=2sequence=49archivedlogfilename=+TEST/arch/1_51_961976319.dbfthread=1sequence=51archivedlogfilename=+TEST/arch/2_50_961976319.dbfthread=2sequence=50archivedlogfilename=+TEST/arch/2_51_961976319.dbfthread=2sequence=51mediarecoverycomplete,elapsedtime:00:08:44Finishedrecoverat2017-12-1818:58:02
6.执行以下互斥操作
.以读写方式打开CDB,放弃目标SCN之后的所有改变。在这种情况下,你必须将CDB重启到mount状态后,然后执行以下命令
alterdatabaseopenresetlogs
.使用Data Pump导出CDB中你所需要的对象。然后将CDB恢复到当前时间点并重新导入对象,因此可以将需要的对象进行恢复而不用放弃所有其它对象所发生的改变。
RMAN>alterdatabaseopenreadonly;StatementprocessedRMAN>alterpluggabledatabaseallopenreadonly;StatementprocessedSQL>connjy/jy@jypdbConnected.SQL>selectcount(*)fromt1;COUNT(*)----------39RMAN>shutdownimmediatedatabasecloseddatabasedismountedOracleinstanceshutdownRMAN>startupmountconnectedtotargetdatabase(notstarted)OracleinstancestarteddatabasemountedTotalSystemGlobalArea6442450944bytesFixedSize8807168bytesVariableSize1895828736bytesDatabaseBuffers4529848320bytesRedoBuffers7966720bytesRMAN>recoverdatabase;Startingrecoverat2017-12-1822:26:55allocatedchannel:ORA_DISK_1channelORA_DISK_1:SID=10instance=jy1devicetype=DISKstartingmediarecoverymediarecoverycomplete,elapsedtime:00:00:05Finishedrecoverat2017-12-1822:27:05RMAN>alterdatabaseopen;StatementprocessedstartingfullresyncofrecoverycatalogfullresynccompleteRMAN>alterpluggabledatabaseallopenreadwrite;Statementprocessedstartingfullresyncofrecoverycatalogfullresynccomplete
感谢各位的阅读!关于“如何使用RMAN对CDB执行按时间点恢复”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。