文档章节

RMAN学习过程之十,综述笔记

JAVA枪手
 JAVA枪手
发布于 2017/09/06 13:18
字数 2366
阅读 14
收藏 0

很多rman的文章或书籍的开头,总是会先写为什么要用rman,rman的优势等等。俺偏偏不如此,反倒把它放到最后面。俺认为但凡关注rman,不管了不了解、知不知道为什么要用,都不会影响到其选择rman的决定。至于其优势,相信通过前面篇章的论述,大家对其特点已经很了解,我再总结性的摘抄一些rman 的优点 ,大家对号选择看看它们有没有自夸吧。

各种故障背景下的恢复方法

丢失或损坏的文件

归档模式

数据库状态

恢复方法

一个或多个数据文件

不归档模式

关闭状态

利用一致的完全数据库备份修复整个数据库,自从备份之后发生的所有修改都将丢失;修复数据库后不需要进行恢复,利用RESETLOGS选项直接打开数据库;

注意:在这种情况下进行恢复时,惟一一种可以不利用RESETLOGS选项打开数据库的情况就是在执行最近一次备份之后,联机重做日志中的内容没有被覆盖掉。

一个或多个数据文件,以及联机重做日志文件

不归档模式

关闭状态

利用一致的完全数据库备份修复整个数据库,自从备份之后发生的所有修改都将丢失;修复数据库后不需要进行恢复,利用RESETLOGS选项直接打开数据库。

一个或多个数据文件以及所有的控制文件

不归档模式

关闭状态

利用一致的完全数据库备份修复整个数据库,自从备份之后发生的所有修改都将丢失;修复数据库后不需要进行恢复,利用RESETLOGS选项直接打开数据库。

注:以上三种不归档模式下的数据库恢复都需要在数据库关闭状态下进行,并且需要拥有正确的控制文件备份。

一个或多个数据文件

归档模式

加载状态

在数据库打开状态下执行表空间或数据文件恢复操作,首先将表空间或数据文件置为脱机状态,然后利用备份修复它们,对它们进行恢复,最后再将它们重新置为联机状态;任何数据修改都不会丢失,并且在恢复过程中数据库的其他部分仍然是可以访问的。

全部的数据文件

归档模式

关闭状态

利用备份修复数据文件,然后使用控制文件加载数据库,并且执行完全恢复;如果所有的联机重做日志文件都没有丢失或损害,最后可以用正常方式打开数据库(不需要使用RESETLOGS选项)

一个或多个数据文件以及恢复所需的归档重做日志文件。

归档模式

加载状态

对包含丢失的数据文件的表空间进行基于时间的表空间恢复,将这个表空间恢复到最近的可用归档重做日志所对应的时刻下的状态。

所有的控制文件,还可能包括一个或多个数据文件

归档模式

未加载状态

利用备份修复丢失的控制文件与数据文件,然后对数据文件进行恢复;任何数据修改都不会丢失,但是在恢复过程中数据库将处于不可用状态。

所有的控制文件,还可能包含一个或多个数据文件,以及恢复所需的归档惩一儆百日志文件与联机重做日志文件

归档模式

未加载状态

利用备份修复丢失的控制文件与数据文件,然后进行不完全恢复,将数据库恢复到最近的可用归档重做日志所对应的时刻下的状态;包含在丢失的日志文件中以及它随后的其它日志文件中的数据修改都将会丢失;最后需要使用RESETLOGS选项来打开数据库。

注:归档模式下的数据库恢复并不一定要求关闭数据库,其中某些情况要求在加载模式下进行恢复,并且也需要拥有正确的控制文件备份。

 

不同备份恢复方式的特点

RMAN 方式

自定义方式

在对联机数据文件进行备份时,RMAN将对当前处于不一致状态的数据块进行反复读取,直到读取到一个一致状态的数据块为止;你不将包含数据文件的表空间设置为进入备份模式

必须将包含要进行备份的数据文件的表空间设置为进入备份状态,然后在备份完成后再将表空间设置为退出备份模式;在表空间处于备份模式期间,数据库的性能将会由于频繁的I/O操作而受到严重影响(oracle会将用户修改的数据块先写入联机重做日志文件中)

可以进行增量备份,即仅对那些上一次自动备份以来发生变化的数据块进行备份;可以使用增量备份对数据库进行恢复,这就意味着你可以对运行在不归档模式下的数据库进行恢复;不过当数据库运行在不归档模式时,所做的增量备份也必须是一致的(即完全关闭状态下建立的备份)

在备份时只能对所有的数据块进行备份(复制文件),而不能仅对变化的数据块进行备份;如果数据库运行在不归档模式下,就只能进行数据库修复而不能进行任何恢复操作。

在备份过程中会对复制的每一个数据块进行校验,在利用备份进行修复时也会对数据库的正确性进行检查

在备份和修复过程中都不会对数据块进行任何校验与检查;如果修复所使用的备份中包含损坏的数据块,那么恢复后的数据库中将包含错误的数据

在备份过程中仅会复制那些包含数据的数据块,而并不会复制那些完全空白的数据块,这样得到的备份文件的大小就会大大缩小。

在备份过程中只能完全复制数据文件,无论数据文件中包含了多少实际数据,备份的大小与数据库的大小是相同的。

利用恢复目录来存放与备份和恢复相关的重要信息,包括:

l  数据库中包含的模式

l  哪些文件需要进行备份

l  哪些文件在经过了指定的天数后还没有进行新的备份

l  哪些文件由于已经有了更新的备份或者已经无法用户恢复过程而需要删除

l  当前RMAN的参数配置等

不会对用户的备份与恢复操作进行任何记录,除非你自己以手工方式进行记录

可以将一系统相关的RMAN命令作为脚本保存在档案库中,在需要时招行这些脚本就可以完成特定的备份或恢复操作

只能将备份或恢复命令保存成操作系统批处理文件,维护起来比较困难。

可以利用RMAN备份轻松地复制出一个与当前数据库一模一样的数据库,你可以利用复制出来的数据库作为测试用数据库或者备用数据库使用

如果要建立测试用数据库或备份数据库,必须按照创建普通数据库的过程来进行复杂的操作。

在进行备份或修复操作时可以自动进行并行操作

必须根据要进行备份或恢复的文件以手工方式并行招行操作系统命令

提供归档日志自动容错功能:如果RMAN发现某个备份中丢失了或损坏一个归档重做日志文件,它会自动利用其它备份中的相同的归档重做文件来进行替换

无法自动提供归档日志的容错替换功能

通过使用介质管理API,RMAN可以与其它第三方的介质管理软件紧密地结合在一起进行工作。

无法与任何第三方介质管理软件直接结合在一起进行工作。

  在前面我已经不止一次的提到过,RMAN非常简单,同时也非常灵活,经过这近一个月的学习和实践,我们介绍了很多基础性的操作,当然RMAN的功能绝不止于此,一些更高级的功能,比如数据块恢复,通过Duplicate创建standby等等。路漫漫其修远矣,吾将上下而求索~~~~~

本文转载自:http://www.5ienet.com/note/html/rman/rman-backup-intro.shtml

共有 人打赏支持
JAVA枪手
粉丝 7
博文 95
码字总数 15221
作品 0
东城
高级程序员
catalog恢复目录介绍和配置

2.1、nocatalog介绍 nocatalog方式 就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息。因此,当使用rman nocatalog方式备份...

PengChonggui
06/28
0
0
NBU网络备份大全之oracle系统热备份

学习和掌握如何使用NBU备份文件系统,对于一个数据管理员来说,仅仅是一个开始。因为对于大部分企业来说,买来NBU主要是为了备份企业数据库的数据,保护数据库的数据安全,进而保证企业应用的...

晨曦之光
2012/03/09
0
0
RMAN简明教程之五——RMAN还原和恢复

一、常规还原与恢复 RMAN 的整个恢复过程可以分为还原(restore)与恢复(recover) ,他们在含义上是有很大差别的,一个是指物理意义的文件的还原与拷贝,一个是指数据库一致性的恢复,所以...

晨曦之光
2012/03/09
0
0
oracle-rman-list命令收集

参考Oracle Database Backup and Recovery Reference文档。 列出备份信息 列出详细备份信息:备份集(Backup Sets),镜像备份(image copies),proxy copies的信息。 lists backup sets, image...

sijinge
2017/11/07
0
0
rman report list crosscheck delete -rman常用命令

一、REPORT 1、报告目标数据库的物理结构 RMAN>REPORT SCHEMA 2、报告需要备份的数据文件 在执行备份之前,常常需要取得需要备份的数据文件信息,通过执行REPORT NEED BACKUP命令,可以列出需...

zhailibao
2014/02/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

java并发备忘

不安全的“先检查后执行”,代码形式如下: if(条件满足){ //这里容易出现线程安全问题//doSomething}else{//doOther} 读取-修改-写入 原子操作:使用CAS技术,即首先从V中读取...

Funcy1122
今天
0
0
SpringBoot2.0 停机

最近新建了个SpringBoot2.0的项目,因为原来一直使用的是传统的Tomcat部署war包的形式,所以这次SpringBoot内置Tomcat部署jar包的时候遇到了很多问题。其中一个就是因为没有外置的Tomcat容器...

Canaan_
昨天
0
1
Confluence 6 外部参考

一个外部参考的意思是任何站点链接到你 Confluence 的实例。任何时候当 Confluence 的用户单击这个外部链接的时候,Confluence 可以记录这次单击为参考。 在默认的情况下,外部链接的参考链接...

honeymose
昨天
0
0
Android中的设计模式之抽象工厂模式

参考 《设计模式解析》 第十一章 Abstract Factory模式 《设计模式:可复用面向对象软件的基础 》3.1 Abstract Factory 抽象工厂 对象创建型模式 《Android源码设计模式解析与实战》第6章 创...

newtrek
昨天
0
0
Redis | 地理空间(GEO)的一个坑

Redis的地理空间(Geo)是个好东西,轻轻松松的就可以把地图描点的问题处理了, 最近却遇到一个坑...Redis采用的Msater-Slave模式, 运用GEORADIUS在salve读取对应的数据,新增了从节点但是从不返...

云迹
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部