您的位置:首页 > 数据库 > Oracle

Oracle备份恢复的一些概念

2010-10-22 15:33 344 查看
这几天总结了比较多的知识,也做了不少练习,强度不小
周六,就不弄太多的东西了
昨天说过,要开始利用RMAN来备份恢复数据库
今天就先为以后的练习做些准备,了解一下在备份恢复中需要知道的概念吧

备份恢复,是数据库对数据安全的重要保障手段
备份,主要是针对数据库中的数据而言
这些数据不仅仅是记录,也可以是元数据(可以通俗理解为数据对象的定义信息)
数据库的控制文件,数据库的数据文件等等
之前已经接触过一些备份操作
像刚刚总结过的逻辑备份exp,expdp
和之前进行数据库异地异系统恢复所用的RMAN备份集
以前曾经简单总结过关于备份恢复
但那时候说得太笼统,还有很多地方没有提到
今天就来重新深入,总结过的,如果有必要会捎带提一下

这篇总结,主要目的是想趁机把restore,recover等几个概念搞得清楚些
之前自己只是照着文档说明的步骤,来进行操作,对一些操作的含义还不是很了解
特别是restore和recover,从中文翻译上,两者有些近义词的感觉
要把两者弄得更清楚些,就要提到一致性的概念
一致性,是针对数据库备份来说的
在对数据库对象进行备份的时候,数据库的状态将会决定备份是否一致
以前提到过的冷备份,就属于一致性备份
当把数据库对象设置为只读状态后,也可以进行一致性备份
概括一下的话,就是备份的数据库对象,是在一个对象相对无变化状态下进行的
这种备份,在通过resotre之后,就不需要recover来统一状态了
如果数据库运行在NOARCHIVELOG非归档模式下
那只有选择非一直备份,才能确保数据完整性
因为此模式没有将redo log进行归档保存
recover需要的日志,可能已经被覆盖而无从查找

说了一致性,非一致性就好理解了
在线备份,数据库非正常关闭,都是属于非一致性的
而这些备份能否保证数据的可用性
还需要相应的redo log,但因为在线的redo log会被覆盖
所以就需要归档的redo log文件
因此,要进行具有数据完整性的非一致性备份
就需要数据库运行在ARCHIVELOG模式下
每当非一致性备份之后
还应该将redo log归档并备份归档文件
然后还要备份控制文件
因为备份期间,可能数据库还进行了更改对象的操作
这些操作记录在了在线redo log中
将他们强制归档,以便今后恢复时应用
而执行对象备份和日志归档备份后的控制文件,是存有最新SCN的依据

从数据库备份的对象范围来说,可以分为
数据库完全备份,包含所有数据文件,控制文件的备份(操作相对容易)
表空间备份,针对表空间这个逻辑概念,备份相应的物理数据文件
数据文件备份,只备份某个数据文件(要求多,恢复麻烦,不怕的就用这种方法吧)
控制文件备份,备份数据库的控制文件(之前用过备份控制文件脚本功能)
归档重做日志备份,备份归档的日志(什么?运行在非归档模式下?那还备个屁啊)

从备份文件存在的形式,可以分为
镜像副本,其实就是拷贝
可以利用操作系统命令拷贝,也可以通过RMAN拷贝
利用RMAN,可以验证备份对象数据块,并在catalog或控制文件中记录相关信息

备份集,RMAN将要备份的数据库对象整合在一个或多个备份片中
这种形式专属于RMAN操作,也是今后个人练习的主要对象

在线情况下用操作系统命令进行备份,会产生额外的redo
来应对备份过程中,数据库对象的变化
而使用RMAN备份时会校验数据块有效性,所以不会产生额外redo信息

对于恢复,用户一般是执行媒体media恢复
media恢复就是在resotre备份的数据库对象后,再进行recover日志
此恢复可以进行完全和不完全恢复
完全恢复,是从备份点恢复到数据库最新时间点
这种恢复需要备份点之后,到最新时间点之间的全部归档和在线日志
如果中间有日志损坏,就只能进行不完全恢复了
不完全恢复可以选择恢复程度参照的对象
比如按时间,按SCN,按日志序号,还可以由用户执行CANCEL来控制

总结了这些之后,对于resotre和recover作用就有进一步认识了
restore是将备份数据库对象进行恢复
而recover是在数据库对象恢复后,进行对象一致性的操作
recover在已经restore的对象上,利用redo log执行备份操作中未含有的操作
那么,如果非一致性备份后没有执行所需的归档操作
在恢复的时候会发生什么?这个就需要具体实践来验证了
不过,就目前个人的认识,恢复后的数据库,可能要通过一些操作来强制打开
还可能会有丢失数据库对象的情况

另外,还有一种恢复方式Flashback,闪回
此功能是Oracle后来加入的功能
利用Oracle自动存储在闪回区的信息,进行快速恢复
相关介绍会在以后练习的时候单独总结

今天是为了即将开始的RMAN实践,做铺垫性的总结
也是利用周末小小的放松一下
话说……明天还是周末……
呵呵,有可能也像今天这样,弄的不多吧 ^_^
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: