Oracle OCP笔记(08)控制文件

本文深入解析Oracle控制文件的核心概念,包括其作用、内容、配置方法、备份策略以及恢复流程。详细介绍了如何通过参数设置、视图查询和操作系统命令来管理控制文件,确保数据库的一致性和可靠性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle OCP笔记(08)控制文件



1.关于控制文件
    控制文件是数据库中非常重要的一类文件,它记录了当前实例连接的数据库的结构和行为,并维护数据库的一致性.
    初始化参数文件中描述控制文件的位置.
    控制文件是很小的二进制文件,一般不要超过100M.
    在实例mount时读取控制文件,open后一直在使用.
    控制文件只能连接一个database.
    控制文件丢失需要要恢复.
    最多有8个控制文件,最少1个,多个控制文件是镜像的关系.
    控制文件的初始化大小由CREATE DATABASE时定义.


2.控制文件包含以下内容
    数据库名字和标识
    数据库创建的时间戳
    表空间名字
    数据文件和联机重做日志文件的位置和名字
    当前联机重做日志文件的sequence号码
    检查点信息
    回滚段的开始和结束
    联机重做日志的归档信息
    备份信息


3.下列视图获得控制文件信息
    v$controlfile  列出实例的所有控制文件的名字和状态
    v$parameter    列出所有参数的位置和状态(参数control_files)
    v$parameter2   列出所有参数的位置和状态(参数control_files),多行列表形式
    v$controlfile_record_section  提供控制文件的记录部分的信息
    show parameter control_files  列出控制文件的名字,状态,位置


    使用操作系统命令strings查看控制文件中的具体内容
    strings control01.ctl | more




4.修改控制文件初始化参数,可以包含新副本位置
    alter system set control_files='control01.ctl','control02.ctl','control03.ctl' scope=spfile;
    shutdown immediate
    startup


5.备份控制文件
    脱机一致冷备份
    shutdown之后复制控制文件即可(所有控制文件及副本select * from v$controlfile),处于打开或加载模式时进行复制,副本是无效的。


    联机不一致热备份
    alter database backup controlfile to 'file_name' reuse;     -- 二进制文件
    alter database backup controlfile to trace as 'file_name';  -- 文本文件,重建脚本


    RMAN备份控制文件
    RMAN> connect target /
    RMAN> backup current controlfile;
    RMAN> backup database include current controlfile;
    RMAN> configure controlfile autobackup on;   --将控制文件自动备份功能置为on;


6.控制文件副本恢复
    永远都不能彻底丢失控制文件,必须实现控制文件的多重化。如果控制文件的任何副本受损,数据库实例将立即异常终止,如果尝试启动,实例将进入NOMOUNT模式,并停在那里,只有CONTROL_FILES实例参数指定的所有副本都有效,才会加载数据库.
    了解哪个控制文件副本受损或丢失,须看警报日志(alert_SID.ora),警报日志位置: 
    select value from v$parameter where name='background_dump_dest';  -- 10g及以前
    select value from v$diag_info where name ='Diag Trace';           -- 11g
    修复受损文件,用v$parameter查询中列出的继续存在的文件之一,覆盖受损文件.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值