Oracle 11g R2 管理控制文件
admin
2023-04-19 08:23:13
0次

oracle数据库控制文件是非常重要的文件,它是数据库创建的时候自动生成的二进制文件,其中记录了数据库的状态信息,主要包括以下内容

Ø 数据库的名称,一个控制文件只能属于一个数据库

Ø 数据库创建时间

Ø 数据文件的名称、位置、联机、脱机状态信息

Ø 重做日志文件的名称、位置及归档信息

Ø 所有表空间信息

Ø 当前日志序列号

Ø 最近检查点信息

控制文件在数据库启动的Mount阶段被读取,在数据库启动时首先使用默认规则找到并打开参数文件,在参数文件中含有控制文件的位置信息,打开控制文件后,会通过控制文件中记录的各种数据库文件的位置打开数据库,从而启动数据库到可用状态。当成功启动数据库后,在数据库的运行过程中,数据库服务器可以不断的修改控制文件中的内容,所以在数据库被打开的阶段,控制文件必须是可读写的。但是其他任何用户都无法修改控制文件,只有数据库的实例才可以修改控制文件中的信息。

查看控制文件信息,可以从V$controlfile视图中查看控制文件信息,控制文件名称
Oracle 11g R2 管理控制文件
除了从V$controlfile视图查看控制文件信息外,还可以从V$parameter视图中查看
Oracle 11g R2 管理控制文件

如何查看控制文件中所存的内容信息

可以使用V$controlfile_record_section
Oracle 11g R2 管理控制文件
查看V$controlfile_record_section中type,record_size,records_total,records_used
Oracle 11g R2 管理控制文件
从截图当中可可以看到控制文件中存放了创建数据库的信息、重做日志信息、数据文件及归档日志文件记录等信息。这些有价值的信息用于数据维护和管理,很多数据字典视图是从控制文件中获得的信息。

存储多重控制文件

由于控制文件非常重要,所以要求控制文件不能只有一个,通常数据库中控制文件要多于3个,并且存放在不同的磁盘上,这种使用控制文件的方法也称为控制文件的多路复用。实现多重的一个方法就是通过复制控制文件到多个位置并修改初始化参数文件中的CONTROL_FILES参数,使之包含所有控制文件名称。需要注意,当存在多个控制文件时,oracle会同时更新所有的控制文件,但是仅对CONTROL_FILES中所列举的第一个控制文件进行读取操作。

举例说明实现多路复用控制文件的方法:

数据库状态为打开状态,修改SPFILE中的CONTROL_FILES参数
Oracle 11g R2 管理控制文件
Oracle 11g R2 管理控制文件
关闭数据库
Oracle 11g R2 管理控制文件
使用操作系统命令将文件复制到新的位置
Oracle 11g R2 管理控制文件
重新启动实例
Oracle 11g R2 管理控制文件
备份控制文件

备份控制文件

为了确保数据库的安全,在数据文件或日志文件位置信息发生变化时,例如新增数据文件到表空间时,对控制文件进行备份。有两种备份方式:备份为二进制文件和备份为脚本文件

举例说明备份为二进制文件的方法:

备份控制文件之前先查看当前系统中存在几个控制文件
Oracle 11g R2 管理控制文件

备份控制文件
Oracle 11g R2 管理控制文件
修改系统参数文件
Oracle 11g R2 管理控制文件
关闭数据库之后启动数据库之后报ORA-00214错误,原因是控制文件版本不一致导致的

control01.ctl控制文件版本是817, control02.ctl的版本是806.
Oracle 11g R2 管理控制文件
使用control01.ctl覆盖control03.ctl,使得控制文件版本保持一致即可。
Oracle 11g R2 管理控制文件
关闭数据库
Oracle 11g R2 管理控制文件
在重新启动数据库就可以了Oracle 11g R2 管理控制文件

恢复控制文件

假设CONTROLD_FILES所指定的控制文件已经损坏,但在数据字典中还能访问控制文件,则可以采用下面的步骤进行恢复:

关闭数据库实例
Oracle 11g R2 管理控制文件
删除控制文件
Oracle 11g R2 管理控制文件
启动数据库
Oracle 11g R2 管理控制文件
此时数据库的状态是
Oracle 11g R2 管理控制文件
用操作系统将完好的控制文件覆盖掉损坏的控制文件
Oracle 11g R2 管理控制文件
关闭当前数据库
Oracle 11g R2 管理控制文件
重新启动数据库实例
Oracle 11g R2 管理控制文件
如果对此文有什么问题的话,请加下面微信一起探讨
Oracle 11g R2 管理控制文件

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...