oracle 控制文件

一、控制文件(Control File):是一个较小的二进制文件,用于记录与维护数据库的物理结构;
   1.当启动例程并打开数据库时,oracle会根据初始化参数control files 在例程和数据库之间建立关联.装载数据库(MOUNT状态)时,ORACLE会安装初始化参数                control_files定位并打开控制文件和重做日志。
   2.控制文件主要记载信息:
     数据库名称和位置、重做日志名称和位置、表空间名称、当前日志序列号、数据库建立日期、检查点信息、日志历史信息、RMAN信息
   3.控制文件位置:
     select name from v$controlfile;
   4.控制文件主要由永久参数和Rman信息组成
      MAXINSTANCES:用于指定可以同时访问数据库的最大例程个数;
     MAXDATAFILES:用于指定oracle数据库的最大数据文件个数;
      MAXLOGFILES:用于指定oracle数据库的最大日志组个数;
      MAXLOGMEMBERS:用于指定每个日志组的最大日志成员个数;
      MAXLOGHISTORY:用于指定控制文件可记载日志历史的最大个数;
  5.使用RMAN执行备份操作时,RMAN备份信息会被记载到控制文件中,
    初始化参数control_file_record_keep_time指定了RMAN备份信息在控制文件中的保留时间,默认值为7;
  6.创建一个控制文件
    1):获取数据文件和重做日志文件
       数据文件: select name from v$datafile;
       日志文件:select member from v$logfile;
    2):关闭数据库: shutdown immediate
    3) :备份所有的数据文件和重做日志
      4) : 启动数据库: sartup nomount
    5):创建控制文件
       create controlfile  reuse database database_name noresetlogs|resetlogs noarchivelog|archivelog
       reuse database database_name:如果database_name数据库存在,使用database_name数据库,如果不存在重新创建数据database_name
       noresetlogs|resetlogs:指定仍然使用原有重做日志,如果不希望使用原有重做日志,可以指定RESETLOGS选项
       noarchivelog|archivelog:日志不归档/日志归档
    6):修改control_file参数 使其指向新建的控制文件 如果修改了数据库名称还需修改db_name参数
          alter system set control_files='controlfile_name1'...scope=spfile;
    7):如果需要恢复数据库的话需要执行
           alter database open
    8):使用了resetlogs 则执行 alter database open resetlogs;
  7.控制文件备份(复制控制文件)
     alter database backup controlfile to '/data/oracle/control_01'
  8.将控制文件备份为可读文件
     alter database backup controlfile to trace;
  9.控制文件的恢复
     如果控制文件被破坏,但存储控制文件的目录仍然可以访问,并且存在控制文件副本,
     则可以关闭数据库实例,然后使用操作系统将控制文件副本复制到控制文件目录下,覆盖被损坏的控制文件,然后重启数据库;
 10.删除控制文件
   1)关闭数据库 shutdown immediate
   2)编辑初始化参数control_files.使其不再包含要删除的控制文件的名称;
   3)重启数据库 sartup nomount
 11.查看控制文件信息
   与控制文件有关的数据字典视图
   v$database //显示控制文件描述的数据库信息
   v$controlfile //显示控制文件的名称和状态信息
   v$controlfile_record_section //显示控制文件各个记录的信息
   v$parameter //显示初始化参数controlfile_files中的控制文件名称

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值