Oracle数据库 控制文件
一、概念
控制文件的主要任务是管理数据库的状态以及描述数据库的物理结构
二、所含有的信息
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数据库 控制文件的更多相关文章
- Oracle数据库控制文件多路复用
Oracle数据库控制文件多路复用多路复用控制文件,指的是在系统不同的位置上同时存放多个控制文件的副本,此时如果某个路径对应的磁盘发送物理损坏导致该控制文件损坏,就可以通过另一个磁盘上的控制文件进行恢 ...
- Oracle的控制文件
一.控制文件 oracle的控制文件是极其重要的文件,它是一个较小的二进制文件. 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等等 在参数文件中描述其位置, ...
- Oracle数据库的文件以及Oracle体系架构
第一部分.Oracle数据库的文件 1.参数文件:控制实例的行为的参数的集合 参数文件的作用 设定数据库的限制 设置用户或者进程的限制 设定数据库资源的限制 调整系统的性能 主要的参数文件 SGA_T ...
- Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法
Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法 可能是误删文件导致在使用rman备份时候出现以下提示 RMAN-06169: could not read file hea ...
- oracle重建控制文件
根据已有数据库创建新的控制文件#数据库必须是mounted或open状态 sql> alter database backup controlfile to trace; 可以使用以下快捷方式找 ...
- Oracle 重建控制文件
前些天在做Oracle数据库恢复测试时,因为一些异常操作导致控制文件出了问题,数据库无法正常使用,这里记录一下重建控制文件的操作 一.使用sysdba用户登入数据库 此时普通用户已无法链接数据库 二. ...
- Oracle 重建控制文件一例
环境:OEL 5.7 + Oracle 10.2.0.5 背景:在Oracle的运维过程中,时常会遇到一些场景是需要重建控制文件才可以解决的.本文的场景可以通过复制控制文件到新路径,运行一段时间后,再 ...
- Oracle的控制文件和日志文件
--什么是控制文件 控制文件是数据库的一个二进制文件,它主要记录数据库的名称. 数据库的数据文件存放位置等信息. 一个控制文件只能属于一个数据库.如果控制文件丢失,这数据库就无法操作. --下面查询语 ...
- 关于oracle修复控制文件与数据文件不一致的问题----
本小菜鸟周末鼓捣数据库关于rman恢复与备份方面的实验,结果不知道哪根筋搭错了,手一哆嗦,做了不知道什么操作,就出现了数据库打不开的严重状态,只能开启到mount状态,但是切换到open状态时就会报错 ...
随机推荐
- phpmyadmin上传大sql文件办法
进入php5文件夹下: cd /etc/php5/apache2 #根据你当时的配置选择,比如之前配置是apache2就进入apache2,如果是cli就进入cli文件夹下 打开php.ini文件 s ...
- How to mount a NFS share?
Assume you have a NFS share /data/shares/music, at server: 192.168.1.5 You can mount the NFS share f ...
- [k]自定义上传文件按钮样式
<!DOCTYPE HTML> <html> <head> <meta charset="UTF-8"> <title> ...
- C++构造函数、析构函数与抛出异常
[本文链接] http://www.cnblogs.com/hellogiser/p/constructor-destructor-exceptions.html [问题] 构造函数可以抛出异常么?析 ...
- java切换VPN让你像幽灵一样出现在全国各地
在很多情况下,有些网络应用的需求会要求模拟人在不同地区访问网站和应用.因而切换IP也就应运而生了,然而IP作为一种稀缺资源不是随便可以获得的.因而会想到应用程序切换VPN来达到全国不同地区访问网络.因 ...
- ACM/ICPC 之 DFS求解欧拉通路路径(POJ2337)
判断是欧拉通路后,DFS简单剪枝求解字典序最小的欧拉通路路径 //Time:16Ms Memory:228K #include<iostream> #include<cstring& ...
- 5.js模式-职责链模式
1. 职责链模式 将对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止. var chain = function(fn){ this.fn = fn; this.successor = ...
- 内存管理_JAVA内存管理
Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽各个硬件平台和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的内存访问效果.那 ...
- EF的各种删除方法
//2.1检查 id 是否存在 //2.2执行删除 Models.Student stu = new Models.Student() { Id = id }; //db.Students.Attac ...
- 【leetcode】Binary Tree Right Side View(middle)
Given a binary tree, imagine yourself standing on the right side of it, return the values of the nod ...