开发者社区> 苍雪明南> 正文

Oracle数据库控制文件在备份恢复中的作用

简介: 整理自《Oracle database 11g RMAN备份与恢复》 001     控制文件平常的作用是负责数据库的物理结构。顾名思义,控制文件控制数据库查找物理文件的位置,并控制每个文件当前包含(或应当包含)的头信息,其内容包括数据文件信息、重做日志信息和归档日志信息。
+关注继续查看
整理自《Oracle database 11g RMAN备份与恢复》
001
    控制文件平常的作用是负责数据库的物理结构。顾名思义,控制文件控制数据库查找物理文件的位置,并控制每个文件当前包含(或应当包含)的头信息,其内容包括数据文件信息、重做日志信息和归档日志信息。控制文件还含有与数据库关联的关键文件的每一个头文件的快照(snapshot)。正是因为包含有丰富的信息,所以在rman出现之前的任何恢复操作中,控制文件一直是主要的组件。
    由于控制文件存储的是数据库文件信息,所以rman会利用控制文件获取备份所需的信息,具体的操作方式是:rman使用控制文件来编译文件列表,得到检查点信息,并确定可恢复性。通过直接访问控制文件,rman可以编译文件列表而不需要用户创建文件列表,这样避免了备份脚本时的一个非常繁琐的步骤,并且在添加一个新文件时不需要更改这个脚本。控制文件会存储新文件的信息,因此rman也能从控制文件中得到这个信息。
    控制文件还能用做rman恢复目录。rman完成数据库任何部分的备份后,会在控制文件中添加该备份的记录,以及说明备份开始和备份结束时间的检查点信息。这也是从Oracle7到Oracle8版本控制文件大小呈指数增长的一个主要原因,即控制文件中存在rman表。控制文件中的这些记录通常称为元数据,它与实际备份中记录的数据有关,它也可以存储在恢复目录中。

002
    控制文件将其内部数据记录分为两类:循环重用记录和非循环重用记录。循环重用记录包含可以从控制文件中删除的信息。例如,归档日志历史信息可以被删除,并且不会影响产品数据库。非循环重用记录是那些不能被删除的记录,如果控制文件因这类记录而空间不足,则会删除这些记录以得到更多的空间。非循环重用记录包括数据文件列表和日志文件列表。
    控制文件中的rman备份记录属于循环重用记录类别,如果含有这些记录的控制文件区域已满,这些记录就会被删除。这会给恢复带来灾难,致使控制文件中不含有任何rman备份记录,rman就不能使用备份来执行恢复操作。因此,控制文件是rman的一个关键因素,没有备份记录,我们就不能执行恢复操作。如果删除某些备份记录,我们就不能再使用这些记录指向的备份。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Oracle 的控制文件
Oracle 的控制文件
10 0
Oracle中如何备份控制文件?备份控制文件的方式有哪几种?
Oracle中如何备份控制文件?备份控制文件的方式有哪几种?
99 0
oracle学习36-rman备份-控制文件丢失恢复
oracle学习36-rman备份-控制文件丢失恢复
80 0
oracle数据库控制文件的备份和恢复之三RMAN自动备份和恢复
使用RMAN自动备份的控制文件向数据库中恢复控制文件
86 0
oracle数据库控制文件的备份和恢复之一手动备份和恢复
实验步骤:手动备份和恢复oracle控制文件
335 0
+关注
苍雪明南
主流数据库:Oracle、MySQL、DB2 编程语言:Java、Python、shell 大数据工具:ZooKeeper、kafka
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
迁移 ORACLE 最佳实践
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关镜像