在Windows操作系统中,如果注册表文件被损坏了,就会影响操作系统的稳定性。严重的话,会导致操作系统无法正常启动。而控制文件对于Oracle数据库来说,其作用就好象是注册表一样的重要。如果控制文件出现了意外的损坏,那么此时Oracle数据库系统很可能无法正常启动。为此作为Oracle数据库管理员,务必要保证控制文件的安全。

  在实际工作中,数据库管理员可以通过备份控制文件来提高控制文件的安全性。但是笔者认为这是下下之策。因为当控制文件出现损坏时,通过备份文件来恢复的话,会出现数据库在一段时间内的停机。为此笔者建议各位数据库管理员最好还是采用多路复用来保障控制文件的安全。在采用多路复用的情况下,当某个控制文件出现损坏时,系统会自动启用另外一个没有问题的控制文件来启动数据库。所以说不会出现停机的状况。

一、控制文件多路复用的特点。

  多路复用的原理其实很简单,就是在数据库服务器上将控制文件存放在多个磁盘分区或者多块硬盘上。数据库系统在需要更新控制文件的时候,就会自动同时更新多个控制文件。如此的话,当其中一个控制文件出现损坏时,系统会自动启用另外的控制文件。只有当数据库管理员运气比较背的时候,即所有控制文件都出现损坏,此时数据库就无法正常启动了。不过只要将控制文件多路复用在多块硬盘上,一般来说控制文件一起损坏的纪律很小。所以采用多路复用控制文件可以在很大程度上提高控制文件的安全性。最重要的是,在控制文件转换的过程之中,不会有停机现象的产生。

  所以通过把控制文件存放在不同的硬盘上,数据库管理员就能够避免数据库出现单点故障的风险。当采用多路复用技术启用多个控制文件时,数据库在更新控制文件时会同时更新这些控制文件。虽然有时候这可能会让数据库对控制文件的修改花费更多的时间,但是相对于风险来说,这点时间上的投资还是值得的。再说只要硬盘的性能比较好,那么这个时间的影响是很少的,甚至可以忽略不计。不过在采用多路复用的时候,最好不要将控制文件防止在网络上的服务器中。有时候如果系统在更新控制文件时刚好碰到网络性能不好甚至网络中断的情况下,那么这个控制文件的更新就需要耗用比较长的时间。如在Windows操作系统下安装Oracle数据库的话,其默认情况下就启用了多路复用技术。不过这个多路复用技术不怎么合理。其将其余的两个控制文件副本保存在同一个分区的同一个目录下。万一这台服务器的硬盘出现了故障,由于控制文件保存在同一个硬盘中,为此多路复用就失去了意义。为此最好将控制文件保存在不同的硬盘中,以提高控制文件的安全性。

 

1、init.ora初始化文件多路复用控制文件

2、spfile多路复用控制文件(所有过程由sys用户操作)

1)修改control_files参数:

语法:alter system set control_files=‘控制文件路径1’,

‘控制文件路径2’,.......,

‘控制文件路径n’ scope=spfile;

2)关闭数据库:shutdown immediately;

3)进行文件拷贝(必须在数据库关闭下复制文件,并且需要DOS命令复制,不能手工复制):

语法:copy 文件1,文件2;

4)打开数据库:startup;

5)用select name from v$controlfile;查询控制文件信息。

Oracle体系结构之控制文件的多路复用技术相关推荐

  1. 控制文件的多路复用技术

    在Windows操作系统中,如果注册表文件被损坏了,就会影响操作系统的稳定性.严重的话,会导致操作系统无法正常启动.而控制文件对于Oracle数据库来说,其作用就好象是注册表一样的重要.如果控制文件出 ...

  2. oracle重建控制文件流程,ORACLE之重建控制文件

    当这些信息更改或者变动时,oracle数据库会自动把最新信息更新到controlfile文件里面. 启动数据库时,Oracle从初始化参数文件(pfile/spfile)中获得控制文件的名字及位置,打 ...

  3. oracle 控制文件冗余,Oracle 添加冗余控制文件 for RAC On Linux

    ============================== 萌哒萌哒的分割线=============================== 注:添加冗余控制文件期间需要有关库操作,需注意!!! 备份 ...

  4. 重做日志和控制文件的多路复用

    控制文件的多路复用问题 如果是spfile 1 要添加一个control04.ctl 那么做一下修改 alter system set control_files = '/data1/control0 ...

  5. oracle如何打开控制文件,看一看oracle控制文件里面的内容

    众所周知,oracle数据库的控制文件是很小的二进制文件,是打不开的,打开了也是乱码,但可以通过转储文件来获得控制文件的详细信息. alter database backup controlfile ...

  6. oracle控制文件的复用,ORACLE 10g ASM 控制文件多路复用

    1> 检查数据库,查看控制文件存放路径 SQL> startup ORACLE instance started. Total System Global Area  230686720 ...

  7. oracle之二控制文件

    控制文件   3.1 控制文件的功能和特点:        1)定义数据库当前物理状态,不断在往controlfile写入[SCN等]        2)维护数据的一致性        3)是一个二进 ...

  8. 还原oracle控制文件位置,oracle 11.2 控制文件还原

    ****************************************** 1.控制文件备份分类 ****************************************** 通常分 ...

  9. oracle 控制文件在哪里设置_更改Oracle默认的控制文件设置

    环境:Windows XP SP2 32位 Oracle 9.2.0.1 32位 创建数据库后,Oracle默认的3个控制文件都在c:/oracle/oradata/SID/下,3个鸡蛋都在一个篮子里 ...

最新文章

  1. linux ftp显示进度条,在Python中显示FTP下载进度(ProgressBar)
  2. UIScrollView无法滚动可能的原因及解决办法分析
  3. POJ1573-Robot Motion
  4. 根据输入时间段备份压缩日志文件
  5. (转)探究 TCP 一次数据包最大负载,上限真的是 65495 byte 吗
  6. 大整数乘法c语言代码_大整数乘法
  7. 第五篇:路由网关(zuul) zuul路由 服务过滤 (Finchley版本)V2.0_dev
  8. WordPress苏醒Grace v8.2博客主题模板去sq版
  9. android接口类命名规范_Android开发规范
  10. 【首发】'k4' 宏病毒专杀 原创新型excel宏病毒专杀工具
  11. 虚拟机下面装XP系统、安装ensp的步骤及使用ensp过程中所遇问题的解决
  12. CentOS7安装Pentaho Server 8.1 CE 社区版
  13. 特定场景下的网络质量评估与预警方法介绍
  14. poj1392 Ouroboros Snake 欧拉回路
  15. 固态硬盘安装操作系统
  16. Android 仿UC首页 某个版本--coor
  17. c语言如何编辑一个长方形,C语言对象编程第一弹封装与抽象(建立长方形对象)...
  18. c语言去除字符串中字母,C语言经典例题100例——C语言练习实例32解答(在字符串中删除指定字母或字符串)...
  19. 2021-12-11每日刷题打卡
  20. 原生Js导出Excel文件

热门文章

  1. JAVA进制的表示方式
  2. 接口测试--apipost接口断言详解
  3. Jmeter接口测试三种类型
  4. 计算机课实验报告收获体会,计算机实验报告总结.doc
  5. stm32实验报告心得体会_嵌入式第9次实验报告
  6. raster | R中的栅格操作符(下)[翻译]
  7. c语言与java负数补码,详解原码、反码与补码存储与大小
  8. google python代码规范_Python代码这样写才规范优雅! (二)
  9. 最受互联网争抢的web前端工程师
  10. 5个小技巧让你写出更好的JavaScript 条件语句