第三章 控制文件

1.功能特点

记录数据库当前的物理状态

维护数据库的一致性,是一个二进制的小文件

在mount阶段被读取,记录rman备份的元数据

查看database控制文件的位置

Show parameter control_file

Select name from v$controlfile

2实时更新机制

当增加,重命名删除一个数据文件或者一个联机日志文件时,oracle服务器进程会立即更新控制文件以反映数据结构的变化。

日志写进程lgwr负责把当前日志序列号记录到控制文件中。

检查点进程ckpt负责把校验点的信息记录到控制文件中

归档进程arcn负责把回档日志的信息记录到控制文件中

通过视图v$controlfile_record_section 可以了解到控制文件中记录了大量的数据库当前状态信息

3多元化

配置多个control_files 控制文件最好事3个(最多是八个),多路复用指的是相互镜像。

一般配置方法

修改spfile中的control_files 参数,修改之前最好将spfile 先备份一份

复制控制文件,oracle建议将多个控制文件分配在不同的物理磁盘上。

三个控制文件要一致(同一版本scn相同),本来就是镜像关系

可以将控制文件dump出来,在跟踪文件中观察一下控制文件的内容

Alter session set events’immediate trace name controlf level 12’;

Select * from v$diag_info

4备份与重建

指对控制文件的实时备份,用于恢复数据文件

注意,数据库打开时是不能cp控制文件的

Alter database backup controlfile to ‘/u01/oradata/prod/con.bak’;

重建控制文件

可以在数据库启动的mount 或open阶段生成一个trace文件,方便重建控制文件

文件内容存在default trace file中

alter database backup  controlfile to trace

可以指定trace文件的路径

Alter database backup controlfile to trace as ‘/u01/oradata/prod/con.trace’

5恢复与重建控制文件

控制文件一旦损坏,系统将不能正常工作,受损的控制文件会记录在告警日志中,恢复或重建控制文件必须在nomount的情况下进行。

如果单个控制文件损坏,可以通过简单的复制解决

如果所有的控制文件丢失,可以通过二进制控制文件备份,和tracke脚本重建创建控制文件,trace 重建会丢失归档的记录信息,和rman信息

利用trace 重建控制文件

第一步在数据局库mount 或open下生成 trace脚本

第二步启动到nomount状态下

第三步 执行trace 脚本

脚本中的可见信息有 DB_NAME,指定几个参数限定控制文件的最大值,在线日志的物理信息,数据文件的物理信息,使用的字符集。重建复制了当前所有数据文件头部的最新scn信息复制到了控制文件中,以使接下来打开数据库。

Select file#,checkpoint_change#fromo v$datafile ;

Select file#,checkpoint_change#from v$datafile_header

第四步 打开数据库

Alter database open ;

第五步  添加临时数据文件信息,(trace脚本中的最后一行)

ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/oradata/prod/temp01.dbf'

SIZE 30408704  REUSE AUTOEXTEND ON NEXT 655360  MAXSIZE 32767M;

ALTER TABLESPACE TEMP2 ADD TEMPFILE '/u01/oradata/prod/temp02.dbf'

SIZE 10485760  REUSE AUTOEXTEND OFF;

标签:文件,第三章,trace,控制,数据库,oracle,日志,重建

来源: https://blog.51cto.com/lusiyuan/2485117

oracle体系三大文件,oracle 体系_第三章控制文件相关推荐

  1. matlab 常用m文件,MATLAB基础课程 第三章 M文件知识(4)

    上堂课讲了if语句, 本堂课讲什么呢? 开始讲开关结构了. 注意事项!!! 与其他的程序设计语言(比如C语言)的switch-case语句不同的是,在MATLAB语言中,当其中一个case语句后的条件 ...

  2. oracle log block size,案例:Oracle无法启动报错ORA-00218: block size 0 重建控制文件

    天萃荷净 oracle数据库无法启动报错ORA-00218故障,通过重建控制文件解决文件损坏问题 遇到一个案例在数据库启动的时候报ORA-00218错误,而这个故障的引起原因是因为重建控制文件的时候, ...

  3. oracle备份信息在控制文件丢失,恢复之利用备份在所有控制文件丢失情况下恢复(一)...

    如果全部控制文件丢失,但是包含以前控制文件的备份,这时可以利用备份的控制文件进行恢复,不过在恢复后需要以RESETLOGS方式打开数据库. 根据联机重做日志文件是否可用和数据文件是否是最新的可以分为四 ...

  4. oracle 控制文件在哪里设置_oracle的controlfile控制文件

    参数文件中定义控制文件位置及个数,建议控制文件放在不同位置,最多可以创建8个,多个控制文件间是镜像的关系. 控制文件包含: 数据库名字及标识 数据库创建的时间戳 表空间名字 数据文件和联机重做日志文件 ...

  5. 《精通数据仓库设计》中英对照_第三章

    <精通数据仓库设计>中英对照_第三章 第二部分 模型开发 数据仓库应该表示企业数据的各个方面,这些方面以主题域和业务数据模型开始.我们将在第3章使用一个假想的公司,指导一步一步地开发这两个 ...

  6. 如果控制文件损坏那么如何恢复?恢复控制文件的方式有哪几种

    [RMAN]如果控制文件损坏那么如何恢复?恢复控制文件的方式有哪几种? 真题1.如果控制文件损坏那么如何恢复?恢复控制文件的方式有哪几种? 答案:如果控制文件有多个,而只损坏了单个控制文件,那么只需要 ...

  7. Lync Server 2010的部署系列_第三章 证书、架构、DNS规划

    Lync Server 2010的部署系列_第三章 证书.架构.DNS规划 一.证书规划 组件 使用者名称 使用者备用名称条目/顺序 证书颁发机构 (CA) 备注 边缘外部接口 Sip.Giantha ...

  8. ArcGIS for Desktop入门教程_第三章_Desktop软件安装 - ArcGIS知乎-新一代ArcGIS问答社区...

    原文:ArcGIS for Desktop入门教程_第三章_Desktop软件安装 - ArcGIS知乎-新一代ArcGIS问答社区 1 软件安装 1.1 安装前准备 请确认已经收到来自Esri中国( ...

  9. c语言中,x-y,'105',ab,7f8那个是正确的,C语言程序设计_第三章 数据.ppt

    C语言程序设计_第三章 数据 * 运算符功能 与运算量关系 要求运算量个数 要求运算量类型 运算符优先级别 结合方向 结果的类型 学习运算符应注意 * 基本算术运算符: + - * / % 结合方向: ...

最新文章

  1. 大年初一,今年的春晚你看了吗?
  2. 【白话设计模式二】外观模式(Facade)
  3. c++ socket error 10038错误
  4. Elide 4.3.1 发布,雅虎开源的应用数据 API 搭建平台
  5. DL之CNN:利用自定义DeepConvNet【7+1】算法对mnist数据集训练实现手写数字识别、模型评估(99.4%)
  6. neural network ppt for support vector machine
  7. python的kite下载安装及使用_Kite下载|Kite Python编程工具 V1.2020.1203.0 最新版下载 - 下载银行...
  8. 让主页或Blog日访问量增加3000
  9. 127.0.0.0与0.0.0.0的区别
  10. 大数据学习笔记21:MR案例——分区全排序
  11. (转)SpringMVC学习(十二)——SpringMVC中的拦截器
  12. 2048小游戏设计思路
  13. MyBB论坛兼容智能手机的解决方案
  14. 针对低网速的性能优化
  15. 参观移动公司机房感想
  16. 使用翻译器扫描图片后,里面的日文可以被翻译出来吗?
  17. python turtle画简易的太极图
  18. Cesium|xt3d模型展开动画
  19. 一个新技术与传统产业开始越来越深入融合的发展新趋势
  20. 怎样在证件照片底部加文字

热门文章

  1. FPGA基础之LUT详解
  2. vue饼图组件_vue2.0 自定义 饼状图 (Echarts)组件
  3. spring spring c3p0 mysql配置_Spring通过c3p0配置bean连接数据库
  4. python 爬虫 selenium
  5. 【Beta】Scrum Meeting 2
  6. Unity 网络编程(Socket)应用
  7. javax.xml.bind.UnmarshalException: 意外的元素 (uri:, local:xml)。所需元素为(none)
  8. GitLab-CI与GitLab-Runner
  9. HTML5学习笔记四: 列表, 块和布局
  10. Day03 javascript详解