oracle 备份 rman 使用总结_第1页
oracle 备份 rman 使用总结_第2页
oracle 备份 rman 使用总结_第3页
oracle 备份 rman 使用总结_第4页
oracle 备份 rman 使用总结_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1、oracle 备份与恢复目录1数据库常见故障类型:22数据库保护机制:22.1数据库备份22.2事务日志23备份原则:34备份与恢复策略:34.1规划备份策略时需要考虑的因素:34.2灾难恢复策略的规划44.3制定数据恢复策略步骤:44.4制定恢复策略时应该考虑以下几个要素:45备份分类:45.1按备份的数据量:45.2按备份状态来划分55.2.1物理备份55.2.2逻辑备份56脱机备份与恢复:56.1冷备份所需备份文件56.2脱机备份步骤:66.3案例实践:脱机备份与不完全恢复66.4脱机备份优缺点:77联机备份与恢复87.1案例实践:联机备份与完全数据库恢复87.2联机备份优缺点:98备份

2、恢复实践操作108.1基础理论108.2rman(备份与恢复管理器)108.3基本知识108.3.1rman的组件、概念108.3.2rman的使用:命令行接口与脚本128.4rman的配置138.4.1建立recovery catalog恢复目录138.4.2查看rman的默认设置show命令148.4.3配置rman的默认设置148.4.4rman 会话的设置178.5copy镜像拷贝与恢复188.5.1备份188.5.2恢复198.6backup备份与恢复208.6.1backup 备份命令选项208.6.2restore/recover恢复命令选项238.6.3非归档模式下的 back

3、up 备份与恢复258.6.4归档模式下的backup备份与完全恢复278.6.5归档模式下的不完全恢复328.7rman查看信息 list与report348.7.1恢复目录相关视图348.7.2rman 动态性能视图348.7.3list358.7.4report368.8操作中遇到的困难和解决方法368.9附录-操作演示代码示例及注释388.9.1登陆恢复管理器388.9.2镜像拷贝398.9.3backup操作39dba的主要职责之一是备份数据库和在数据库发生故障时高效、安全地恢复数据库。1 数据库常见故障类型: 系统崩溃或服务器崩溃 用户错误、冲突或者磁盘失效导致的文件丢失 sql语

4、句失败 网络故障 场地灾难2 数据库保护机制:oracle数据库保护机制:数据库备份和事务日志。 2.1 数据库备份一般来说,数据库备份可以分为物理备份和逻辑备份。 物理备份可分为脱机备份和联机备份。脱机备份又称为冷备份,只能在数据库关闭后进行备份;联机备份又称为热备份,数据库没有关闭,用户还可以使用。逻辑备份是使用export实用程序备份,当数据库出现故障,可以使用oracle的import实用程序恢复数据库。2.2 事务日志数据库的事务日志(transaction log)是一组操作系统文件,它记录了提交事务所做的数据库修改。 日志主要是保护数据库,在数据库出现故障时执行恢复。 为了防止日

5、志本身的故障,oracle允许在不同的物理磁盘上维护两个或多个日志的副本。3 备份原则:一般来说,一个完善的备份系统,需要满足以下原则: 1) 稳定性:备份软件一定要与操作系统100%兼容,其次,当事故发生时,要能快速有效地恢复数据 2) 全面性:选用的备份软件要能支持各种操作系统、数据库和典型应用 3) 自动化:备份方案应能提供定时的自动备份,并利用磁带库等技术进行自动换带。在自动备份过程中,还要有日志记录功能,并在出现异常情况时自动报警。 4) 高性能:设计备份时要尽量考虑提高数据备份的速度,采用多个磁带机并行操作的方法。 5) 操作简单:数据备份应用于不同领域,进行数据备份的操作人员水平

6、参差不齐,这就需要一个直观的、操作简单的图形化用户界面 6) 实时性:有些关键性任务需要24小时不停机运行,进行备份时,有些文件可能仍处于打开状态。在这种情况下备份,必须采取措施,实时查看文件大小、进行事务跟踪,以保证正确地备份系统中的所有文件。 7) 容错性:数据是备份在磁带上的,要对磁带进行保护,并确保备份磁带中数据的可靠性,这是一个至关重要的方面。若引入(raid)技术对磁带进行镜像,就能更好地保证数据安全可靠,等于给用户再加一把保险锁4 备份与恢复策略:4.1 规划备份策略时需要考虑的因素:(1)选择合适的备份频率(如经常做,有规律做,做了结构上的修改应及时做等)尽量采用定时器、批处理

7、等由计算机自动完成的方式,以减少备份过程中的手工干预,防止操作人员漏操作或误操作。(2)根据数据的重要性可选择一种或几种备份交叉的形式制定备份策略。(3)当数据库比较小,或者当数据库实时性不强或者是只读的,则备份的介质可采用磁盘或光盘。在备份策略上可执行每天一次数据库增量备份,每周进行一次完全备份。备份时间尽量选择在晚上服务器比较空闲的时间段进行,备份数据保存在一星期以上。(4)就一般策略来说,当数据库的实时性要求较强,或数据的变化较多而数据需要长期保存时,则备份介质可采用磁盘或磁带。在备份策略上可选择每天2次,甚至每小时一次的数据库热完全备份或事务日志备份。为把灾难损失减少到最小程度,备份数

8、据应保存一个月以上。同时每季度或每半年可以考虑再做一次光盘备份。另外每当数据库的结构发生变化,或进行批量数据处理前应做一次数据库的完全备份,且这个备份数据要长期保存。(5)当实现数据库文件或者文件组备份策略时,应时常备份事务日志。当巨大的数据库分布在多个文件上时,必须使用这种策略。(6)备份数据的保管和记录是防止数据丢失的另一个重要的因素。这将避免数据备份进度的混乱,应清楚记录所有步骤,并为实施备份的所有人员提供此类信息,以免发生问题时束手无策。数据备份与关键应用服务器最好是分散保管在不同的地方,通过网络进行数据备份。定时清洁和维护磁带机或光盘。把磁带和光盘放在合适的地方,避免磁带和光盘放置在

9、过热和潮湿环境。备份的磁带和光盘最好只许网络管理员和系统管理员访问他们。要完整、清晰的做好备份磁带和光盘的标签。 4.2 灾难恢复策略的规划灾难恢复就是为恢复计算机系统提供的保证。业界广泛的经验和教训说明,灾难恢复的成功在于企业中经过良好训练和预演的人在自己的角色上实施预先计划的策略,即灾难恢复计划。在系统备份与灾难恢复计划建立以后,还必须在事前反复测试,并随时调整、加以改进,完整的系统恢复方案才能得以建立。其中灾难恢复策略在整个恢复方案中占有非常重要的作用。4.3 制定数据恢复策略步骤: (1)评估公司对数据流和有效数据的需要。 (2)每次数据损坏事故造成的经济损失有多大。 (3)在多长时间

10、范围内必须成功进行数据恢复,以避免其影响企业收益。 (4)评估数据损失的风险,确定跨部门的数据恢复策略优先级别。 (5)评估数据存储设备的所有潜在的风险。 (6)使用上述评估结果制定质优价廉(cost effective)的安全机制,包括备份。 (7)数据损失的间接代价是什么。 (8)通过对所有的数据损坏进行预算来制定预防策略和最终的数据恢复策略。4.4 制定恢复策略时应该考虑以下几个要素: 文档化并归档系统配置 文档化并归档灾难恢复的程序 安全措施、文档及磁带介质跟踪 判别和保护所有业务关键的服务器 在线数据保护更利于恢复5 备份分类:5.1 按备份的数据量: 完全备份(full backu

11、p) :备份系统中的所有数据,特点是备份所需的时间最长,但恢复时间最短,操作最方便,也最可靠; 增量备份(incremental backup) :只备份上次备份以后有变化的数据,特点是备份时间较短,占用空间较少,但恢复时间较长; 差分备份(differential backup):只备份上次完全备份以后有变化的数据,特点是备份时间较长,占用空间较多,但恢复时间较快; 按需备份(synthetic full backup) :根据临时需要有选择的进行数据备份。5.2 按备份状态来划分5.2.1 物理备份物理备份是指将实际物理数据库文件从一处拷贝到另一处的备份,冷备份、热备份都属于物理备份。 所

12、谓冷备份,也称脱机(offline)备份,是指以正常方式关闭数据库,并对数据库的所有文件进行备份。其缺点是需要一定的时间来完成,在恢复期间,最终用户无法访问数据库,而且这种方法不易做到实时的备份。 所谓热备份,也称联机(online)备份,是指在数据库打开和用户对数据库进行操作的装填下进行的备份;也指通过使用数据库系统的复制服务器,连接正在运行的主数据库服务器和热备份服务器,当主数据库的数据修改时,变化的数据通过复制服务器可以传递到备份数据库服务器中,保证两个服务器中的数据一致。这种热备份方式实际上是一种实时备份,两个数据库分别运行在不同的机器上,并且每个数据库都写到不同的数据设备中。5.2.

13、2 逻辑备份逻辑备份就是将某个数据库的记录读出并将其写入到一个文件中,这是经常使用的一种备份方式。mssql和oracle等都提供export/import工具来用于数据库的逻辑备份。 6 脱机备份与恢复:冷备份是可以进行的最简单的备份操作类型。冷备份是在以一致的方式,完全地将数据库关闭时进行的。一旦关闭数据库,所有的数据库文件应该被备份到磁盘或者磁带上面。一旦完成文件拷贝,数据库能够被启动,并且用户可以重新开始他们的工作。数据库不需要为了进行冷备份,而处于归档日志模式,但没有归档日志记录,数据库只能够被恢复到冷备份执行的时间点上。冷备份是一个简单的选择,就其运行方式来看是受限的,但是一旦拥有

14、冷备份,那么它工作起来会更简单,而且提供很多功能。6.1 冷备份所需备份文件当数据库被关闭的时候,将文件拷贝到磁盘的其他位置或者磁带上。应该备份的文件包括:l 所有数据库数据文件及表空间,包括系统、临时以及回滚/撤消表空间;l 控制文件,备份二进位控制文件和文本控制文件;l 正在被使用的归档日志;l 警报日志;l 存在的oracle密码文件;l 参数文件init.ora及spfile;l 重做日志但是在任何时候还原重做日志的时候,都应该特别小心,因为重做日志的还原会覆盖当前存在的重做日志,它包含完成恢复所需要的重做流中的最后信息。因为这一点,oracle建议不要对重做日志进行备份。6.2 脱机

15、备份步骤:(1)以dba或特权用户登录,对于需要的备份文件,用户也可通过下列sql语句来了解数据文件、重演日志文件及控制文件的相应位置及名称。select * from v$logfile;select * from v$dbfile;select * from v$controlfile;(2)关闭数据库shutdown normal;或者执行shutdown immediate;(3)复制数据文件,用拷贝命令备份全部的数据文件、重做日志文件、控制文件、初始化参数文件等。简单的处理方法是将数据库所在路径下的文件全部复制备份。在下面实验案例中所用数据库orcl的目录是:d:oracleprod

16、uct10.2.0oradataorcl(4)重新启动数据库startup;6.3 案例实践:脱机备份与不完全恢复脱机备份数据库相应文件,由于误操作,删除了表空间对象stu表,将备份的数据文件复制到原来的位置,恢复数据库到执行误操作前的状态。以sysdba登录。数据字典dba_tables可以查询表所在的表空间。实际操作步骤:(1) 创建表stu,并插入三条记录;(2) 脱机备份:shutdown immediate;备份数据文件user01.dbf,控制文件,重做日志文件,或者直接将d:oracleproduct10.2.0oradataorcl目录下的文件全部备份。(3) 备份结束重启数据

17、库:startup;(4) 对象stu增加一条记录,结果如下:(5) 模拟误操作,删除了表stu:drop table system.stu; commit;(6) 查询对象stu,返回错误信息:(7) 关闭数据库:shutdown immediate;(8) 复制原先备份的数据文件,控制文件,重做日志等到原来目录下,d:oracleproduct10.2.0oradataorcl;(9) startup mount;(10) 执行基于取消的恢复,recover database until cancel;(11) 以resetlogs方式打开数据库:(12) 查询对象stu,只有脱机备份的三

18、条记录,备份后增加的记录没有恢复;6.4 脱机备份优缺点: 优点: 只需要拷贝文件,速度比较快。 将文件拷贝回去,数据库就可以恢复到某个时间点。 若结合数据库归档模式可以很好地恢复数据库。 维护量相对较少,但安全性相对较高。缺点: 脱机备份时,数据库必须关闭。 单独使用脱机备份,数据库只能基于某一时间点恢复。 若磁盘空间有限,使用磁带等外设时速度较慢。 脱机备份不能按表或用户恢复。7 联机备份与恢复热备份是当数据库已经启动并且运行的时候进行的一种备份。整个数据库可以被备份,表空间或者数据文件的子集可以在一次被备份,当执行热备份的时候,最终用户可以继续进行他们所有的正常操作。为此,数据库必须运行

19、在归档日志模式。一旦备份完成,需要确认所有在备份操作期间被建立的日志记录在随后已经被归档。联机备份一般备份数据文件、控制文件和日志文件。 7.1 案例实践:联机备份与完全数据库恢复在表空间test2_data上建立对象cour,首先执行联机备份,在cour表上加入记录,然后删除数据文件test2_data,最后执行恢复,数据文件重新联机,验证恢复成功。实际操作步骤:(1)设置数据库为归档(archivelog)模式; a.装载但不打开数据库:startup mount; b.修改为归档模式:alter database archivelog; c.打开并访问数据库:alter database

20、 open;(2)在归档模式下,建立表空间test2_data并在其上建立表cour,并插入两条记录;(3)切换日志; (4)备份数据文件;a.先将表空间test2_data设置为备份模式 ;alter tablespace test2_data begin backup;b.拷贝表空间的数据文件test2_data.ora,其他数据文件不变;c.将表空间test2_data设置为正常模式alter tablespace test2_data end backup;(5) 在cour表上添加记录;(6) 使表空间脱机,删除数据文件test2_data.ora;(7) 将表空间联机,出现错误,提

21、示恢复数据文件;(8)将备份的数据文件复制到原来所在位置,执行数据文件恢复。然后,执行数据文件恢复命令,本例中文件号为7;(9)联机表空间;(10)查询对象cour表,确认联机备份恢复成功,联机备份前的数据和备份后新增加的数据都存在;7.2 联机备份优缺点:优点: 可在表空间或数据文件级备份,备份时间短。 备份时数据库仍可使用。 可达到秒级恢复(恢复到某一时间点上)。 可对几乎所有数据库实体作恢复。 恢复快速,大多数情况下恢复不需要关闭数据库。缺点: 不能出错,否则后果严重。 若联机备份不成功,所得结果不可用于时间点的恢复。 因难于维护,所以要特别小心,不允许“以失败而告终”。8 备份恢复实践

22、操作8.1 基础理论恢复可以分为完全恢复和不完全恢复 完全数据库恢复是恢复到故障发生前的状态,所有已经提交的操作都进行恢复,确保数据库不丢失任何数据,完全恢复只用于归档模式。不完全数据库恢复是将数据库恢复到备份点与介质失败点之间某个时刻的状态,并不是恢复所有提交的操作,不完全恢复可能丢失部分数据。 任何类型的恢复包括两个阶段:前滚阶段和回滚(回退)阶段。 在前滚恢复阶段(roll-forward recovery),恢复管理器应用必要的事务日志组“重做”(redo)所有提交的不在数据库数据文件中的事务 。 回滚阶段,在前滚恢复后,oracle必须执行回滚恢复(roll-back recover

23、y)。 由于一些未完成的事务对数据库的修改信息已经提交到数据库,为保证数据库的一致性,需要清除这些事务对数据库的修改,数据库应执行回滚操作(undo),强制撤销这些未完成事务。8.2 rman(备份与恢复管理器)注意:红体字为注意要点,所有详细语法代码都有,截图精选rman 是oracle 提供的一个备份与恢复的工具,可以用来备份和还原数据库文件、归档日志和控制文件。它也可以用来执行完全或不完全的数据库恢复。rman可以由命令行接口或者oem的backup manager gui 来控制。8.3 基本知识8.3.1 rman的组件、概念 rman 组件target databas

24、e: (目标数据库)就是需要 rman 对其进行备份与恢复的数据库,rman 可以备份数据文件,控制文件,归档日志,spfile。(注意:rman不能用于备份联机日志、初始化参数文件和口令文件)server session: (服务器会话)rman 启动数据库上的oracle 服务器进程,将建立一个与目标数据库的会话。由目标数据库上的服务器进程进行备份、还原、恢复的实际操作。服务器进程rman 的服务进程是一个后台进程,用于与rman 工具与数据库之间的通信,也用于rman 工具与磁盘/磁带等 i/o 设置之间的通信,服务进程负责备份与恢复的所有工作,将产生一个服务进程。channel: (通

25、道)一个通道是rman和目标数据库之间的一个连接,allocate channel命令在目标数据库启动一个服务器进程,同时必须定义服务器进程执行备份或者恢复操作使用的i/o 类型。通道控制命令可以用来:(1) 控制rman 使用的o/s资源,影响并行度(2) 指定i/o带宽的限制值(设置limit read rate 参数)(3) 定义备份片大小的限制(设置limit kbytes)(4) 指定当前打开文件的限制值(设置limit maxopenfiles)recovery catalog: (恢复目录)用来保存备份与恢复信息的一个数据库,不建议创建在目标数据库上。rman 利用恢复目录记载的

26、信息去判断如何执行需要的备份恢复操作。如果不采用恢复目录,备份信息可以存在于目标数据库的control file中。如果存放在目标数据库的control file 中,控件文件会不断增长,不能保存rman 的script。control_file_record_keep_time (default=7):控件文件中rman 信息保存的最短时间。使用恢复目录的优势: 可以存储脚本,记载较长时间的备份恢复操作。rman repository: (rman 恢复目录数据库)存放recovery catalog(恢复目录)的数据库。建议为恢复目录数据库创建一个单独的数据库。mml: (媒体管理库)me

27、dia management layer (mml)是第三方工具或软件,用于管理对磁带的读写与文件的跟踪管理。如果你想直接通过 rman 备份到磁带上,就必须配置媒体管理层,媒体管理层的工具如备份软件可以调用rman来进行备份与恢复。 概念述语backup sets (备份集合)备份集合的特性:包括一个或多个数据文件或归档日志,以oracle 专有的格式保存,有一个完全的所有的备份片集合构成,构成一个完全备份或增量备份。backup pieces (备份片)一个备份集由若干个备份片组成。每个备份片是一个单独的输出文件。一个备份片的大小是有限制的;如果没有大小的限制, 备份集就只由

28、一个备份片构成。备份片的大小不能大于使用的文件系统所支持的文件长度的最大值。image copies镜像备份镜像备份是独立文件(数据文件、归档日志、控制文件)的备份。它很类似操作系统级的文件备份。它不是备份集或备份片,也没有被压缩。full backup sets全备份集合全备份是一个或多个数据文件中使用过的数据块的的备份。没有使用过的数据块是不被备份的,也就是说,oracle 进行备份集合的压缩。incremental backup sets增量备份集合增量备份是指备份一个或多个数据文件的自从上一次同一级别的或更低级别的备份以来被修改过的数据块。 与完全备份相同,增量备份也进行压缩。file

29、 multiplexing多个数据文件可以在一个备份集中。recovery catalog resyncing 恢复目录同步使用恢复管理器执行backup、copy、restore 或者switch 命令时,恢复目录自动进行更新,但是有关日志与归档日志信息没有自动记入恢复目录。需要进行目录同步。使用resync8.3.2 rman的使用:命令行接口与脚本数据库状态rman恢复目录数据库: 必须open目标数据库: 根据不同情况,必须mount或open 1. 使用不带恢复目录的rman设置目标数据库的 oracle_sid ,执行:$ rman nocatalogrman con

30、nect targetrman connect target user/pwddb 2. 使用带恢复目录的rman$ rman catalog rman/rmanrman connect target /连接本地数据库作为目标数据库rman connect target user/pwddb /连接远程数据库或$ rman catalog rman/rman target user/pwddb 3. 命令行接口1、单个执行rman backup database;2、运行一个命令块rman run 2 copy datafile 10 to3 /oracle/pro

31、d/backup/prod_10.dbf;4 3、运行存储在恢复目录中的脚本:rman run execute script backup_whole_db ;4、运行外部脚本:$ rman catalog rman/rman target / backup_db.rman$ rman cmdfile=backup.rman msglog=backup.logrman backup_db.rman oracle备份与恢复总结 e-mail / msn : oracle备份与恢复总结 e-mail / msn : rman r

32、un backup_db.rman 如果在cron 中执行,注意在脚本中设置正确的环境变量,例:#set envexport oracle_home=/opt/oracle/product/9.2export oracle_sid=testexport nls_lang=american_america.zhs16gbkexport path=$path:$oracle_home/binrman cmdfile=backup_db.rman 4. 使用脚本创建或者取代脚本:rman create script alloc_disk 2 # allocates one disk3

33、allocate channel dev1 type disk;4 setlimit channel dev1 kbytes 2097150 maxopenfiles 32 readrate 200;5 rman replace script rel_disk 2 # releases disk3 release channel dev1;5 删除脚本:rman delete script level0backup;查看脚本:rman print script level0backup;运行脚本:rman run execute script backup_whole_db ;

34、5. 运行os命令rman支持通过执行host命令暂时退出rman的命令提示符而进入到操作系统的命令环境。 6. 执行sql语句在 rman 的命令提示符后输入 sql 命令,然后在一对单引号(双引号亦可)中输入要执行的 sql 语句,例如:rman sql alter system checkpoint;对于select 语句,无法得到结果。可以先执行host 再用sqlplus。8.4 rman的配置8.4.1 建立recovery catalog恢复目录 (1) 在目录数据库中创建恢复目录所用表空间:sql create tablespace rman_ts datafil

35、e /xxx/rman_ts.dbf size 20m;(2) 在目录数据库中创建rman 用户并授权:sql create user rman identified by rman default tablespace rman_ts temporary tablespace temp quota unlimited on rman_ts;sql grant connect, resource, recovery_catalog_owner to rman;(3) 在目录数据库中创建恢复目录$ rman catalog rman/rmanrman create catalog tablesp

36、ace rman_ts;(4) 登记目标数据库:一个恢复目录可以注册多个目标数据库,注册目标数据库的命令为:$ rman catalog rman/rman target user/pwd rcdb;rman register database;8.4.2 查看rman的默认设置show命令必须连接目标数据库rman show allrman show channel; / 通道分配rman show device type; / io设备类型rman show retention policy; / 保存策略rman show datafile backup copies; / 多个备份的拷

37、贝数目rman show maxsetsize; / 备份集大小的最大值rman show exclude; / 不必备份的表空间rman show backup optimization; / 备份的优化8.4.3 配置rman的默认设置1. 配置备份集文件的格式 (format)rman configure channel device type disk format /u05/oracle/rmanback/%u;备份文件可以自定义各种各样的格式,如下%c 备份片的拷贝数%d 数据库名称%d 位于该月中的第几天 (dd)%m 位于该年中的第几月 (mm)%f 一个基于 dbid 唯一的

38、名称,这个格式的形式为 c-iiiiiiiiii-yyyymmdd-qq,其中iiiiiiiiii 为该数据库的dbid,yyyymmdd 为日期,qq 是一个 1-256 的序列%n 数据库名称,向右填补到最大八个字符%u 一个八个字符的名称代表备份集与创建时间%p 该备份集中的备份片号,从1 开始到创建的文件数%u 一个唯一的文件名,代表%u_%p_%c%s 备份集的号%t 备份集时间戳%t 年月日格式(yyyymmdd)2. 配置默认io设备类型 ( device type )io 设备类型可以是磁盘或者磁带,在默认的情况下是磁盘,可以通过如下的命令进行重新配置。rman configu

39、re default device type to disk;rman configure default device type to sbt;注意,如果换了一种io 设备,相应的配置也需要做修改,如rman configure device type sbt parallelism 2;3. 配置自动分配的通道 ( chanel )rman configure channel device type disk format/u01/oracle/backup/%u在运行块中,手工指定通道分配,这样的话,将取代默认的通道分配。rman run allocate channel cq type

40、 disk format=/u01/backup/%u.bak;通道的一些特性:读的速率限制 allocate channel rate = integer最大备份片大小限制 allocate channel maxpiecesize = integer最大并发打开文件数(默认16) allocate channel maxopenfile = integer4. 配置默认的保存策略 ( retention policy)保存策略是管理备份与副本有效期或者是否有效的一种方法。恢复数据库的时候oracle 不考虑失效的备份。我们可以定义两种保存策略:恢复窗口备份保存策略(recovery win

41、dow backup retention policy )和冗余备份保存策略(redundancy backupretention policy )备份策略保持 分为两个保持策略:一个是时间策略,决定至少有一个备份能恢复到指定的日期一个冗余策略,规定至少有几个冗余的备份。恢复窗口备份保存策略这种保存策略类型的使用基于数据库可能恢复到的最早的日期。 例如,假设今天是星期一,此前存在 3 个备份。第一个备份在昨天生成的,第二个备份是上星期四生成的,而最后一个备份是 10 天前备份的。假如恢复窗口是 7 天,那么昨天和上星期四的备份是有效备份,而 10 天前的备份会成为废弃备份。下面的命令将恢复窗口

42、配置为7 天:rman configure retention policy to recovery window of 7 days;冗余备份保存策略使用这种保存策略,rman 会从最新备份开是保留 n 个数据备份,其余的废弃。例如,如果有四个备份,而冗余数是 3,那么最早的那个备份将被废弃。下面的命令将备份策略设置为 3:rman configure retention policy to redundancy 3;设置none 可以把使备份保持策略失效,clear 将恢复默认的保持策略rman configure retention policy to none;例:保证至少有一个备份能

43、恢复到 sysdate-5 的时间点上,之前的备份将标记为obsoleterman configure retention policy to recovery window of 5 days;至少需要有三个冗余的备份存在,如果多余三个备份以上的备份将标记为冗余rman configure retention policy to redundancy 5;5. 配置多个备份的拷贝数目( backup copies )如果觉得单个备份集不放心,可以设置多个备份集的拷贝,如:rman configure datafile backup copies for device type disk to

44、 2;rman configure archivelog backup copies for device type disk to 2;如果指定了多个拷贝,可以在通道配置或者备份配置中指定多个拷贝地点:rman configure channel device type disk format/u01/backup/%u, /u02/backup/%u;rman backup datafile n format /u01/backup/%u, /u02/backup/%u;6. 设置并行备份( arallelism )rman支持并行备份与恢复,也可以在配置中指定默认的并行程度。如:rman

45、 configure device type disk parallelism 4;指定在以后的备份与恢复中,将采用并行度为4,同时开启4 个通道进行备份与恢复,当然也可以在run 的运行块中手工分配多个通道来决定备份与恢复的并行程度。并行的数目决定了开启通道的个数。如果指定了通道配置,将采用指定的通道,如果没有指定通道,将采用默认通道配置。还可以在backup命令中使用指定filesperset 或者指定(datafile 1,4,5 channelc1 tag=df1)(datafile 2,3,6 channel c2 tag=df2)7. 设置控制文件自动备份 (autobackup

46、on)通过如下的命令,可以设置控制文件的自动备份rman configure controlfile autobackup on;对于没有恢复目录的备份策略来说,这个特性是特别有效的,控制文件的自动备份发生在任何backup 或者copy 命令之后,或者任何数据库的结构改变之后。可以用如下的配置指定控制文件的备份路径与格式rman configure controlfile autobackup format for type disk to %f;在备份期间,将产生一个控制文件的快照,用于控制文件的读一致性,如下配置:rman configure snapshot controlfile n

47、ame to/u01/app/oracle/product/9.0.2/dbs/snapcf_u02.f;8. 设置备份优化选项 ( optimization )可以在配置中设置备份的优化,如rman configure backup optimization on;如果优化设置打开,将对备份的数据文件、归档日志或备份集运行一个优化算法。8.4.4 rman 会话的设置set 命令与 configure 命令很相似,但是 set 命令设置不是永久的。set 命令定义只应用于当前rman会话的设置。可以用于run代码之外的命令有:set echo on | off / 显示或关闭 rman 显示

48、set dbid dbidn / 指定一个数据库的数据库标识符。下面的set 命令只能在run 代码中使用:set newname:用于 tspitr 或者数据库复制操作,指定新的数据库文件名,将数据库移动到新的系统中并且文件名不同的时候可以用此命令。set maxcorrupt for datafile:用于定义 rman 操作失败之前允许的数据块讹误的数量set archivelog destination:可以修改存储归档的重做日志 archive_log_dest_1 的目的地。set 命令和 until 子句:可以定义数据库时间点恢复操作所使用的具体的时间点、scn 或者日志序列号,

49、例:set until time to_date(2005/08/01 13:00:00,yyyy/mm/dd hh24:mi:ss);set backup copies:使用该命令可以定义为备份集的每个备份片创建的镜像副本数。例:rman runset maxcorrupt for datafile 3 to 10;set backup copies = 2;backup database;8.5 copy镜像拷贝与恢复copy镜像拷贝命令可以创建数据库数据文件、归档重做日志或者控制文件的精确副本。rman 副本与这些文件的区别仅在于名称和(或)位置的区别。功能相当于用户管理的备份恢复中的热

50、备份。备份副本的好处是恢复比较快,恢复时可以不用拷贝,指定新位置即可。copy镜像拷贝至少要在 mount 状态下运行。copy镜像拷贝可作为增量备份的 level 0。oracle10g开始,允许使用单条命令backup as copy进行数据库拷贝。8.5.1 备份生成数据文件副本:rman copy datafile 3 to d:backupdatafilecopyusers01.dbf.bak;rman copy datafile d:oracleoradataora9iusers01.dbf tod:backupdatafilecopyusers01.dbf.bak;生成控制文件副

51、本:rman copy current controlfile to ;rman configure controlfile autobackup is on;备份archivelog 副本:/ 只能一个一个的来备份,而不能指定一个范围rman copy archivelog d:oracleoradataarcming_351.arc tod:oracleorabackuparcming_351.arc;并行设置:1. rman configure device type . parallelism = 3;/only 2 channel, one for writting data to

52、disk2. 手工分配多个通道3. 在命令中指定多个文件rman copy datafile xx to xx2, datafile yy to yy2, .;块检查:check logical 选项maxcorrupt 参数v$copy_corruption在复制操作中,oracle 服务器进程对每个块执行校验和计算以检测是否有块损坏。rman 在还原副本时也要核对校验和。该过程称为物理损坏检测。可以使用nochecksum 选项取消校验和操作,从而加快复制进程。如果数据库已在维护块校验和,则此选项无效。缺省情况下,禁用逻辑损坏的错误检查。可以使用 check logical 选项测试通过了

53、物理损坏检查的数据和索引块,查看它们是否存在逻辑损坏,如行片或索引条目损坏。如果检测到任何块存在逻辑损坏,则将该块记录到服务器进程的警报日志和跟踪文件中。可以使用 maxcorrupt 参数设置逻辑和物理损坏的阈值。只要在某个文件中检测到的逻辑和物理损坏总和低于该值,则 rman 命令完成,同时 oracle 将损坏块的范围植入到 v$copy_corruption 视图。如果超出 maxcorrupt,则该命令终止,并且不植入视图。 当并行度比较高时,占用的计算机资源较多,但备份操作完成速度较快。缺省情况下将启用对物理损坏的错误检查。有关在备份过程中遇到的损坏数据文件块的信息将记录在控制文件

54、和警报日志中。8.5.2 恢复查看所有的copy镜像拷贝:rman list copy;数据文件副本还原:还原时可以offline数据文件所属表空间,然后利用os 拷贝命令恢复副本。还可以用 restore (datafile num) from datafilecopy 命令来从数据文件副本中还原数据文件,然后再用 recover 命令来恢复。例如:rman sql alter database datafile 5 offline;rman restore (datafile 5) from datafilecopy;rman recover datafile 5;rman sql alter database datafile 5 online;注意,上面的圆括号很重要,如果没有,restore 命令就会执行失败。8.6 backup备份与恢复backup 备份命令生成backup sets (备份集合),以oracle专有的格式保存,由一个完全的所有的备份片集合构成,构成一个完全备份或增量备份。8.6.1 backup 备份命令选项设置标记(tag)rman backup database tag= test backup;限制备份集大小rman backup database maxsetsize=1

温馨提示

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

评论

0/150

提交评论