使用RMAN备份与还原数据库原理_第1页
使用RMAN备份与还原数据库原理_第2页
使用RMAN备份与还原数据库原理_第3页
使用RMAN备份与还原数据库原理_第4页
使用RMAN备份与还原数据库原理_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

1、使用RMAN备份与还原Oracle数据库原理、数据库备份概念对于Oracle数据库,备份方式包括物理备份和逻辑备份。1、物理备份将实际组成数据库的操作系统文件从一处拷贝到另一处的备份过程,通常是 从磁盘到磁带。该方法实现数据库的完整恢复,但数据库必须运行在归档模式下(业务数据库 在非归档模式下运行),且需要极大的外部存储设备,例如磁带库,具体包括冷 备份和热备份。冷备份和热备份是物理备份(也称低级备份),它涉及到组成数据 库的文件,但不考虑逻辑内容。使用RMAN备份与还原ORACLE数据库的方式, 属于物理备份方法。2、逻辑备份利用SQL语言从数据库中抽取数据并存于二进制文件的过程。业务数据库

2、采 用此种方式,此方法不需要数据库运行在归档模式下,不但备份简单,而且可以 不需要外部存储设备,包括导出/导入(EXPORT/IMPORT)。这种方法包括读取一系 列的数据库日志,并写入文件中,这些日志的读取与其所处位置无关。二、RMAN备份方式使用RMAN备份Oracle数据库,包括以下三种备份概念。1、完全备份(Full Backup)与增量备份(Incremental Backup)完全备份与增量备份是针对数据文件而言,控制文件和归档日志文件不能进 行增量备份。当然,后两者可以做备份优化。2、打开备份(Open Backup)或关闭备份(Closed Backup)数据库打开状态下进行备

3、份即是打开备份,数据库关闭状态下(加载状态)进 行的备份即关闭备份。3、一致备份(Consistent Backup)与不一致备份(InconsistentBackup)数据库打开状态或不干净关闭状态(shutdown abort)进行的备份是不一致备 份,利用不一致的备份修复数据库后还需要做数据库的恢复。在数据库干净关闭 状态进行的备份是一致备份,利用一致备份修复数据库后不需要做数据库的恢复。三、备份策略由于数据库占据物理空间较大,每次都进行全库备份,对存储介质要求比较 高,也会造成空间的冗余浪费,故而在实际的数据备份过程中,通常采用增量备 份的方法。在RMAN增量备份中,有差异增量和累积增

4、量的概念1、概念差异增量:是备份上级及同级备份以来所有变化的数据块,差异增量是默认 增量备份方式累积增量:是备份上级备份以来所有变化的块因为累积增量是备份上级备份以来所有变化的数据块,所以累积增量需要更 多的备份时间,同时需要较小的恢复时间;而差异增量正好相反,它可以备份同 级备份以来变化的数据块。所以会减少备份时间,但需要更多的恢复时间.在 oracle 9中增量备份需要通过扫描整个数据库的数据块才能知道哪些数据块发生 了变化,这是一个代价很大,时间很长的过程,而且由于增量备份形成多个不同 的备份集,使恢复变得更加不可靠,所以增量备份在版本9中仍然不被推荐使用; 在10g中,增量备份作了很大

5、的改进,不需要再扫描所有数据块就能得知哪些数 据块发生变化,从而大大提升备份效率。但这些却以牺牲磁盘i/o为代价,所以 在oltp事务系统中还得衡量是否愿意以i/o为代价来保证安全及高可用性。10g 还支持增量合并,增量备份可支持7级增量。差异增量备份(DIFFERENTIAL)图解差异增量备份RMAN命令方法:RMAN allocate channel cl type disk; #分配通道rman backup incremental level 0 database; #零级备份 rman backup incremental level 2 database; #二级备份 rman b

6、ackup incremental level 1 database; # 一级备份 RMANrelease channel cl;/ 释放通道累积增量(CUMULATIVE)备份累积增量备份RMAN命令方法:RMAN allocate channel cl type disk; #分配通道rman backup incremental level 0 database; #零级备份rman backup incremental level 2 cumulative database; #二级备份 rman backup incremental level 1 cumulative datab

7、ase; #一级备份 RMANrelease channel cl; / 释放通道2、备份策略及恢复备份策略以RMAN多级增量备份作为备份策略例子:增量备份都需要一个0级备份作为基础,0级备份与全备份的区别在于0级 可以用来增量恢复,而全备份则不可以。备份策略典型案例:每半年做一个数据库的全备份(包括所有的数据和只读表空间)每一个月做一次零级备份(不包含只读表空间)每个星期做一次一级备份每天做一次二级备份任何数据库的更改需要重新同步CATALOG目录并重新备份(如添加数据文件) 或重新备份(如修改表空间为只读)。冗余策略RMAN提供了两种备份保留策略:基于时间、基于冗余数量。为RMAN设置了备

8、份保留策略之后,RMAN会自动判断哪些备份集或镜像复 制文件不必再保留。这些备份文件将会被标记为“废弃(Obsolete)”,可以通过 REPORT OBSOLETE命令查看当前处于废弃状态的备份文件,或者通过 DELETE OBSOLETE命令删除这些废弃的备份在执行删除命令时有两点需要了解:如果被判断为废弃的备份是一个单独数据文件的镜像复制,那么在执行DELETE命令时将直接删除这个镜像复制文件。如果被判断为废弃的备份是一个备份集中的一部分,则必须等到整个备份集 中所有其它文件都被废弃之后,才能删除这个备份集。基于时间的备份保留策略。例如将恢复时间段设置为7,那么RMAN所保留的备份即是可

9、以保证你将数 据库恢复到一周内任何时刻下那些文件。设置基于时间的备份保留策略可以通过CONFIGURE命令,例如:RMAN CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF n DAYS;注:n=大于0的正整数执行该命令后,RMAN将始终保留那些将数据库恢复到n天前的状态时需要 用到的备份,比如,恢复时间段被设置为7天,那么各个数据文件的备份必须满 足如下条件:SYSDATE-(SELECT CHECKPOINT_TIME FROM V$DATAFILE)=7任何不满足上述条件的备份都将被RMAN废弃并可通过DELETE OBSOLETE命令删

10、除。基于冗余数量的备份保留策略基于冗余数量实质即某个数据文件以各种形式(包括备份集和镜像复制)存 在的备份的数量。如果某个数据文件的冗余备份数量超出了指定数量,RMAN将 废弃最旧的备份。同样,基于数量的备份保留策略也是通过CONFIGURE命令设置,例如:RMAN CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF n DAYS;同上:n=大于0的正整数当然也可以通过下列命令设置成不采用任何备份保留策略:RMAN CONFIGURE RETENTION POLICY TO NONE;备份优化RMAN中的备份优化(Backup Optimizati

11、on)是指在备份过程中,如果满足特定条件,RMAN将自动跳过某些文件而不将它们包含在备份集中以节省时间和空间。通常 必须满足如下几个条件的情况下,才能够启用备份优化的功能:CONFIGURE BACKUP OPTIMIZATION 参数置为 on;执行的 BACKUP DATABASE或 BACKUP ARCHIVELOG 命令中带有 ALL 或 LIKE 参数。分配的通道仅使用了一种设备类型,也就是没有同时分配使用sbt与disk的多个 通道。打开备份优化设置通过如下命令:RMAN CONFIGURE BACKUP OPTIMIZATION ON;采用任务计划使备份过程自动执行首先按照制定的

12、备份策略将0、1、2级备份策略用RMAN脚本实现,然后将执 行脚本的过程写入批处理文件中(windows系统)、或shell脚本文件中(Linux 系统),并将批处理文件或Shell脚本文件加入任务计划中。零级备份 RMAN 脚本:(E:DBBACKUPDBZJBACK_ALLSCRIPTSL0C_BACKURRMAN) run allocate channel ch1 device type disk;backup incremental level 0format E:DBBACKUPDBZJBACK_ALLBAKSLOC_DBfull_%U.bkp database plus archi

13、velog;release channel ch1;backup current controlfile format E:DBBACKUPDBZJBACK_ALLBAKSc_%U.bak;backup spfile format E:DBBACKUPDBZJBACK_ALLBAKSspf_%U.bak;CROSSCHECK BACKUPSET;DELETE OBSOLETE;批处理文件BAT脚本:set oracle_sid=DBZJRMAN TARGET / msglog E:DBBACKUPDBZJLOGS%date:0,10%.log cmdfile=E:DBBACKUPDBZJBAC

14、K_ALLSCRIPTSL0C_BACKUPRMAN配置RMAN备份 使用SHOW ALL命令可以查看RMAN配置项的当前配置值,通过CONFIGURE命 令对配置项进行设置。RMAN使用目标数据库控制文件替代恢复目录db_unique_name为DBZJ的数据库的RMAN配置参数为:CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;CONFIGURE BACKUP OPTIMIZATION ON;CONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFIL

15、E AUTOBACKUP ON;CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO E:DBBACKUPDBZJBACKUP%F;CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # defaultCONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE D

16、ISK TO 1; # defaultCONFIGURE MAXSETSIZE TO UNLIMITED; # defaultCONFIGURE ENCRYPTION FOR DATABASE OFF; # defaultCONFIGURE ENCRYPTION ALGORITHM AES128; # defaultCONFIGURE COMPRESSION ALGORITHM BZIP2; # defaultCONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # defaultCONFIGURESNAPSHOTCONTROLFILENAMETOE:AP

17、PADMINISTRATORPRODUCT11.1.0DB_1DATABASESNCFDBZJ.ORA; # default 配置备份保留策略为30天:RMAN CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 30 DAYS;同样还可以使用CONFIGURE命令配置备份优化、备份介质位置、控制文件备份、 备份片大小、归档日志项等。四、数据库还原RMAN数据库恢复包括完全恢复和不完全恢复。完全恢复适用于机器环境一 致且备份文件齐全完整,恢复完成后归档日志保持一致。不完全恢复适用于机器 环境改变或备份文件并不完整,恢复完成后归档日志从0(SCN)开

18、始。1、RMAN完全恢复1、恢复数据库1)、所有数据文件被删除c:rman target sys/oraceltest nocatalogRMANstartup force mountRMAN run restore databse ;recover database;sql alter database open ;2)、数据文件所在磁盘出现硬件故障RMAN run startup force mount;set newname for datafile 1 to c:demosystem01.dbf;set newname for datafile 2 to c:demodundotbs0

19、1.dbf7;set newname for datafile 3 to c:demosysaux01.dbf7;set newname for datafile 4 to c:demousers01.dbf7;set newname for datafile 5 to c:demoexample01.dbf7;set newname for datafile 6 to c:demotest0.dbf; restore database;switch datafile all;recover database;sql alter database open ;2、恢复SYSTEM表空间的数据文

20、件1)、SYSTEM表空间的数据文件被误删除RMANrun startup force mount;restore datafile 1;recover datafile 1;sql alter database open ;2)、SYSTEM表空间数据文件所在的磁盘出现故障RMAN run startup force mount;set newname for datafile 1 to c:demosystem01.dbf; restore datafile 1;switch datafile 1;recover datafile 1;sql alter database open;3、在

21、OPEN状态下恢复关闭后意外丢失数据文件1)、数据文件被删除RMANrun startup force mount;sql alter database datafile 4 offline;sql alter database open ;restore datafile 4;recover datafile 4;sql alter database datafile 4 online;2)、数据文件所在的磁盘出现损坏RMANrun startup force mount;sql alter database datafile 4 offline;sql alter database ope

22、n ;set newname for datafile 4 to c:demouser01.dbf;restore datafile 4;switch datafile 4;recover datafile 4;sql alter database datafile 4 online;2、RMAN不完全恢复1、基本时间恢复c:set nls_date_format=yyyy-dd-mm hh24:mi:ss c:rman target sys/ddddddtrain nocatalog RMANrunstartup force mount;set until time=2010-09-09 13:00:00/ ;restore database;recover database;sql alter database open resetlogs;2、基于SCN恢复RMANrun startup force mount;set until scn=123456;resto

温馨提示

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

评论

0/150

提交评论