一、概念
控制文件的主要任务是管理数据库的状态以及描述数据库的物理结构

二、所含有的信息
1、数据库名
2、数据库标识符(DBID)
3、数据库创建时间戳
4、数据库字符集
5、数据文件信息
6、临时文件信息
7、在线重做日志信息
8、近期的归档日志信息
9、表空间信息
10、RMAN备份文件信息,即RMAN资料库
11、检查点信息
12、损坏的数据块注册表
13、还原点信息
14、重设日志SCN
15、脏数据块的数量

三、数据库启动【3个阶段】
1、NOMOUNT阶段:此阶段读取参数文件
2、MOUNT阶段:此阶段打开控制文件
3、OPEN阶段:此阶段读取控制文件,找到并打开所有的在线数据文件和在线日志文件
Oracle数据库启动时,通过读取参数文件中的control_files参数得知控制文件的路径,打开控制文件之后,可以得知数据文件和日志文件的路径,因此控制文件是实例启动过程中必不可少的一个因素。

只要数据库处于打开(open)状态,就会有多个进程出于各自的需要,对控制文件中的参数进行读写操作,比如:CKPT(读写)、LGWR(读写)、ARCn(读写)、DBWn(读)等后台进程,有时还包括服务进程,比如在启动实例或者在创建/删除表空间时,服务进程都会对控制文件有读/写操作。

CKPT进程:该进程对控制文件的访问非常频繁。它将增量检查点的位置以3秒一次的频率更新到控制文件中;此外,在发起完全检查点之后,CKPT除了更新数据文件头部的检查点位置,还会把所有数据文件头部的检查点位置也更新到控制文件中。

四、数据库标识符(DBID)
每个数据库都拥有一个编号(比如:1047875909),成为数据库标识符(DBID)。该编号在创建数据库时自动生成,并且Oracle不保证地球上两个同名数据库的DBID是唯一的。

DBID作用:散布于数据库的各个文件中:控制文件、数据文件和日志文件的头部。通过DBID编号进行区分各个文件隶属于哪个数据库,所以不同数据库的各个文件之间不能替换。

获得DBID编号:
1、查询v$database.dbid字段
2、查看控制文件自动备份的文件名

Oracle数据库 控制文件的更多相关文章

  1. Oracle数据库控制文件多路复用

    Oracle数据库控制文件多路复用多路复用控制文件,指的是在系统不同的位置上同时存放多个控制文件的副本,此时如果某个路径对应的磁盘发送物理损坏导致该控制文件损坏,就可以通过另一个磁盘上的控制文件进行恢 ...

  2. Oracle的控制文件

    一.控制文件 oracle的控制文件是极其重要的文件,它是一个较小的二进制文件. 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等等  在参数文件中描述其位置, ...

  3. Oracle数据库的文件以及Oracle体系架构

    第一部分.Oracle数据库的文件 1.参数文件:控制实例的行为的参数的集合 参数文件的作用 设定数据库的限制 设置用户或者进程的限制 设定数据库资源的限制 调整系统的性能 主要的参数文件 SGA_T ...

  4. Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法

    Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法 可能是误删文件导致在使用rman备份时候出现以下提示 RMAN-06169: could not read file hea ...

  5. oracle重建控制文件

    根据已有数据库创建新的控制文件#数据库必须是mounted或open状态 sql> alter database backup controlfile to trace; 可以使用以下快捷方式找 ...

  6. Oracle 重建控制文件

    前些天在做Oracle数据库恢复测试时,因为一些异常操作导致控制文件出了问题,数据库无法正常使用,这里记录一下重建控制文件的操作 一.使用sysdba用户登入数据库 此时普通用户已无法链接数据库 二. ...

  7. Oracle 重建控制文件一例

    环境:OEL 5.7 + Oracle 10.2.0.5 背景:在Oracle的运维过程中,时常会遇到一些场景是需要重建控制文件才可以解决的.本文的场景可以通过复制控制文件到新路径,运行一段时间后,再 ...

  8. Oracle的控制文件和日志文件

    --什么是控制文件 控制文件是数据库的一个二进制文件,它主要记录数据库的名称. 数据库的数据文件存放位置等信息. 一个控制文件只能属于一个数据库.如果控制文件丢失,这数据库就无法操作. --下面查询语 ...

  9. 关于oracle修复控制文件与数据文件不一致的问题----

    本小菜鸟周末鼓捣数据库关于rman恢复与备份方面的实验,结果不知道哪根筋搭错了,手一哆嗦,做了不知道什么操作,就出现了数据库打不开的严重状态,只能开启到mount状态,但是切换到open状态时就会报错 ...

随机推荐

  1. List转换DataTable

    /// <summary> /// 将泛类型集合List类转换成DataTable /// </summary> /// <param name="list&q ...

  2. Bootstrap之表格checkbox复选框全选

    效果图: HTML中无需添加额外的一列来表示复选框,而是由JS完成,所以正常的表格布局就行了: <table class="table table-bordered table-hov ...

  3. 【GoLang】go 微服务框架 && Web框架学习资料

    参考资料: 通过beego快速创建一个Restful风格API项目及API文档自动化:  http://www.cnblogs.com/huligong1234/p/4707282.html Go 语 ...

  4. Majority Number I & || && |||

    Majority Number Given an array of integers, the majority number is the number that occurs more than ...

  5. 隐藏左侧快速导航除DMS导航树之外的其他区域

    <style type="text/css"> /*隐藏左侧快速导航除DMS导航树之外的其他区域*/ .ms-quicklaunchouter { display: n ...

  6. POJ 1503

    http://poj.org/problem?id=1503 对于这个题我也是醉了,因为最开始是有学长和我们说过这个题目的,我以为我记得题目是什么意思,也就没看题目,结果按案例去理解题意,结果WA了一 ...

  7. ios NSString 转 float的注意

    今天有一个字符串 “33.3”,用想用[valueString floatValue];得到33.3000这个值,结果得到了33.2999这个值,取前3位一个是33.3,一个是33.2,产生了错误,应 ...

  8. DATEADD和DATEDIFF函数、其他日期处理方法 、已打开的端口、FORMAT函数

    DATEADD和DATEDIFF函数.其他日期处理方法 .已打开的端口.FORMAT函数 DATEADD和DATEDIFF函数.其他日期处理方法 .已打开的端口.Format函数 KeyLife富翁笔 ...

  9. ACM/ICPC 之 树形DP(POJ1192)

    将某点看做根状态,邻接点看做子状态,由子状态向根状态转移. POJ1192-最优连通子集 题解:将每一个点分成两个状态进行保存,因此可以构造一个数组dp[i][2]. dp[i][0]:不包括该点权值 ...

  10. ffmpeg-20160726-bin.7z

    ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 f ...