通过RMAN备份恢复数据库到其他服务器.doc_第1页
通过RMAN备份恢复数据库到其他服务器.doc_第2页
通过RMAN备份恢复数据库到其他服务器.doc_第3页
通过RMAN备份恢复数据库到其他服务器.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

通过RMAN备份恢复数据库到其他服务器本节演示如何通过RMAN创建的备份集,将数据库恢复到其他服务器。本小节执行的操作较多,一定要有一个清醒的大脑,因此赶紧把脑袋里那堆乱七八糟的东西清除清除,要不你一定会看晕的。设定环境如下:源库00,SID:jssbook。目录库01,已安装与源库相同版本的数据库软件(一定要相同版本哟)。准备工作如下:记录下源数据库的DBID,DBID的获取方式上节已讲过。创建完整备份集(含控制文件、数据文件、归档文件),源库为非归档模式也可以,只要确保创建的备份是一致备份,然后将备份集复制到目标服务器的相同路径下。为简单起见,源端与目标端目录结构保持一致。如果你在测试或正式操作时由于实际原因无法保持源端与目标端结构一致,在恢复过程中注意修改相关路径。操作步骤如下:注意,下列操作如非特别注明,均是在目标端服务器上进行的。1在源库端创建数据库的完整备份这个过程不用演示了,请没自信的同学自觉重温第8章。备份集创建成功之后,将其复制到目录端的相同路径下,强调一点,必须是相同路径。复制方式灵活多样,Windows环境可以直接通过共享复制,Linux/UNIX下可以通过FTP。2在目标服务器上创建OracleService如果是Linux/UNIX环境,不需要执行本步骤,只要在连接数据库时指定ORACLE_SID环境变量即可。如果是Windows服务器,需要通过ORADIM命令创建一个OracleService,创建的SID要与源库相同,操作如下:1. C:DocumentsandSettingsAdministratorORADIM-NEW-SIDJSSBOOK 2. Instancecreated.上述命令创建了一个名为jssbook的OracleService。关于ORADIM命令的参数说明,直接执行ORADIM命令,不加任何参数即可看到简要说明。3配置目标端数据库的初始化参数文件这个配置主要包括两步:第一步是将源库端的SPFILE初始化参数文件复制到目标端的适当路径,即%ORACLE_HOME%database目录下,如果是Linux/UNIX环境则是在$ORACLE_HOMEdbs目录下。第二步是要修改其中的部分参数值,这一步并不是必须的,如果目标端的路径与源端保持完全一致,不做任何修改都可以。不过如果路径不一致的话,至少要保证如下几个参数所指定的值正确有效:control_files:控制文件路径。audit_file_dest:Oracle审计输出的debug日志路径。background_dump_dest:LGWR、DBWn之类后台进程输出的debug日志路径。core_dump_dest:Oracle内核输出的dump日志路径。user_dump_dest:用户进程输出的debug日志路径。log_archive_dest_1:归档文件路径,如果启用了归档模式的话。由于SPFILE是二进制文件,无法直接编辑,如果要修改,可以先通过SPFILE创建PFILE(客户端初始化参数文件),PFILE可以用文本编辑工具打开(如记事本),修改完相关参数值后,再通过PFILE创建SPFILE即可,大致步骤如下:指定ORACLE_SID,然后连接到SQL*Plus命令行环境:1. C:DocumentsandSettingsAdministratorsetoracle_sid=jssbook 2. C:DocumentsandSettingsAdministratorsqlplus/assysdba3. SQL*Plus:Release.0-ProductiononTueMay513:16:592009 4. Copyright(c)1982,2005,Oracle.Allrightsreserved. 5. Connectedtoanidleinstance.根据源库复制过来的SPFILE创建PFILE,注意给PFILE指定适当的路径,执行命令如下:1. SQLCREATEPFILE=f:oraclebackuppfile_jssbook.ora2. FROMSPFILE;Filecreated.如果从源库复制出来的SPFILE并没放在%ORACLE_HOME%DATABASE目录下,也可以通过FROM SPFILE=的方式指定SPFILE的详细路径,例如:1. SQLCREATEPFILE=f:oraclebackuppfile_jssbook.ora2. FROMSPFILE=f:oracleproduct10.2.0db_1databasespfilejssbook.ora;使用记事本之类的文本工具打开文件F:oraclebackuppfile_jssbook.ora,修改相关参数值并保存。返回SQL*Plus命令行环境,执行下列命令,根据修改过的PFILE创建SPFILE:1. SQLCREATESPFILEFromPfile=f:oraclebackuppfile_jssbook.ora; 2. Filecreated.SPFILE创建成功,数据库就可以启动到NOMOUNT状态了。1. SQLSTARTUPNOMOUNT 2. ORACLEinstancestarted. 3. TotalSystemGlobalArea314572800bytes 4. FixedSize1248720bytes 5. VariableSize67109424bytes 6. DatabaseBuffers239075328bytes 7. RedoBuffers7139328bytes4 恢复控制文件并进入到加载状态新开一个命令行窗口,连接到RMAN命令行:1. C:DocumentsandSettingsjunsansiSETORACLE_SID=jssbook 2. C:DocumentsandSettingsjunsansiRMANTARGET/ 3. RecoveryManager:Release.0-Productionon 4. TueMay513:54:152009 5. Copyright(c)1982,2005,Oracle.Allrightsreserved. 6. connectedtotargetdatabase:jssbook(notmounted)由于此时目标数据库尚无控制文件,因此此处必须首先指定DBID:1. RMANSETDBID=1415261003 2. executingcommand:SETDBID从指定备份集中恢复控制文件:1. RMANRESTORECONTROLFILEFROMF:oraclebackup 2. C-1415261003-20090505-00; 3. Startingrestoreat05-MAY-09 4. usingtargetdatabasecontrolfileinsteadofrecoverycatalog 5. allocatedchannel:ORA_DISK_1 6. channelORA_DISK_1:sid=157devtype=DISK 7. channelORA_DISK_1:restoringcontrolfile 8. channelORA_DISK_1:restorecomplete,elapsedtime:00:00:04 9. outputfilename=F:ORACLEORADATAJSSBOOKCONTROL01.CTL 10. outputfilename=F:ORACLEORADATAJSSBOOKCONTROL02.CTL 11. outputfilename=F:ORACLEORADATAJSSBOOKCONTROL03.CTL 12. Finishedrestoreat05-MAY-09控制文件会被恢复到初始化参数CONTROL_FILES指定的路径下。有了控制文件,就可以将数据库置为MOUNT状态了:1. RMANALTERDATABASEMOUNT; 2. databasemounted 3. releasedchannel:ORA_DISK_15修复数据库在这个测试环境中,源端与目标端的路径保持一致,因此这里可以直接用源路径修复,如果你的目标库与源库路径不同的话,需要通过SET NEWNAME FOR DATAFILE命令来为数据文件重新设定路径(注意,SET NEWNAME必须要放在RUN块中执行的哟)。执行命令如下:1. RMANRESTOREDATABASE; 2. Startingrestoreat05-MAY-09 3. allocatedchannel:ORA_DISK_1 4. channelORA_DISK_1:sid=157devtype=DISK 5. channelORA_DISK_1:startingdatafilebackupsetrestore 6. channelORA_DISK_1:specifyingdatafile(s)torestorefrombackupset7. restoringdatafile00001toF:ORACLEORADATAJSSBOOKSYSTEM01.DBF 8. restoringdatafile00002toF:ORACLEORADATAJSSBOOKUNDOTBS01.DBF 9. restoringdatafile00003toF:ORACLEORADATAJSSBOOKSYSAUX01.DBF 10. restoringdatafile00004toF:ORACLEORADATAJSSBOOKUSERS01.DBF 11. restoringdatafile00005toF:ORACLEORADATAJSSBOOKSCOTT_TBS01.DBF 12. restoringdatafile00006toF:ORACLEORADATAJSSBOOKBOOKS01.DBF 13. channelORA_DISK_1:readingfrombackuppiece 14. F:ORACLEBACKUPBAK_1JKE921J_1_1 15. channelORA_DISK_1:restoredbackuppiece1 16. piecehandle=F:ORACLEBACKUPBAK_1JKE921J_1_1tag=TAG20090505T134835 17. channelORA_DISK_1:restorecomplete,elapsedtime:00:00:55 18. Finishedrestoreat05-MAY-09觉着神奇是吧,这样都可以,不需要指定备份集位置吗?有这样的疑问说明你独立思考得还不够多啊,虽然说人类一思考上帝就发笑,但是作为一名勤劳、勇敢、朴实(就是不爱思考)的中国人,上帝并不是我们的主要信仰,它也管不了神奇的东方世界这嘎。应该说,在一般情况下执行本操作时,不需要做特别的设置,前面在备份章节曾经说过,在NOCATALOG模式下,备份集信息是保存在控制文件中的,现在控制文件已经恢复了,它当然知道应该上哪儿找备份集。那什么时候需要手动指定备份集呢?只有一种情况,当你的备份集不在控制文件的原路径时,你必须通过CATALOG命令重新注册备份集,也就是告诉RMAN,它要找的备份集在哪里。6恢复数据库RECOVER也是同理,不需要你告诉他归档在什么位置,它也知道上哪去找,因为控制文件里都记着呢,直接执行RECOVER即可:1. RMANRECOVERDATABASE; 2. Startingrecoverat05-MAY-09 3. usingchannelORA_DISK_1 4. startingmediarecovery 5. channelORA_DISK_1:startingarchivelogrestore 6. todefaultdestination 7. channelORA_DISK_1:restoringarchivelog 8. archivelogthread=1sequence=51 9. channelORA_DISK_1:readingfrombackuppiece 10. F:ORACLEBACKUPBAK_1KKE923B_1_1 11. channelORA_DISK_1:restoredbackuppiece1 12. piecehandle=F:ORACLEBACKUPBAK_1KKE923B_1_1 13. tag=TAG20090505T134931 14. channelORA_DISK_1:restorecomplete, 15. elapsedtime:00:00:01 16. archivelogfilename=F:ORACLEORADATAJSSBOOK 17. ARCHIVEARC00051_0680477835.001thread=1sequence=51 18. unabletofindarchivelog 19. archivelogthread=1sequence=52 20. RMAN-00571:= 21. RMAN-00569:=ERRORMESSAG

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论