ORACLE control file

以前转载过一篇关于备份和恢复controlfile的文章,地址如下

http://blog.csdn.net/wh62592855/archive/2009/11/20/4844506.aspx

 

控制文件的主要内容

今天突然在想,controlfile里到底包含了哪些信息,查询了几个相关的数据字典视图,网上搜了搜,现在小总结一下

  1. 数据库的名字。该名取自初始化参数说明的数据库名字或CREATE DATABASE语句中所使用的名字。
  2. 数据库标示符。该标示符是在创建数据库时ORACLE自动生成的。
  3. 数据库创建的时间戳。它是在数据库创建时生成的。
  4. 联机重做日志文件的名字和准确位置。当在增加重做日志文件、删除重做日志文件和修改重做日志文件时,ORACLE会修改相关信息。
  5. 当前日志的序列号。它是在日志切换时ORACLE记录的。
  6. 检查点信息。该信息是在产生检查点时ORACLE记录的。
  7. 日志的历史信息。这些信息是在日志切换时ORACLE记录的。
  8. 归档日志文件的准确位置和状态。这些信息是在重做日志文件被归档时ORACLE记录的。
  9. 数据文件的名字和准确位置。当在增加数据文件、删除数据文件和修改数据文件的名字时,ORACLE会修改相关的信息。
  10. 表空间的信息。当在增加或删除表空间时,ORACLE会修改相关的信息。
  11. 备份的准确位置和状态。这些信息时由恢复管理器记录的。

如何限定控制文件的大小

控制文件由两大部分组成:可重用的部分和不可重用的部分。

可重用部分可以使用参数CONTROL_FILE_RECORD_KEEP_TIME参数来控制,该参数的默认值为7天,即可重用部分的内容保留7天,一周之后这部分的内容可能被覆盖。可重用的部分是供恢复管理器来使用的,这部分的内容可以自动扩展。

另外,ORACLE数据库管理员可以使用CREATE DATABASE或CREATE CONTROLFILE语句中的下列关键字(参数)来间接影响不可重用的部分的大小

  • MAXDATAFILES
  • MAXINSTANCES
  • MAXLOGFILES
  • MAXLGHISTORY
  • MAXLOGMEMBERS

CONTROL_FILE_RECORD_KEEP_TIME

Property Description
Parameter type Integer
Default value 7 (days)
Modifiable ALTER SYSTEM
Range of values 0 to 365 (days)
Basic No

CONTROL_FILE_RECORD_KEEP_TIME specifies the minimum number of days before a reusable record in the control file can be reused. In the event a new record needs to be added to a reusable section and the oldest record has not aged enough, the record section expands. If this parameter is set to 0, then reusable sections never expand, and records are reused as needed.

Note:

This parameter applies only to records in the control file that are circularly reusable (such as archive log records and various backup records). It does not apply to records such as datafile, tablespace, and redo thread records, which are never reused unless the corresponding object is dropped from the tablespace.
 

 

怎样查看控制文件的配置
怎样才能得到控制文件中全部记录的相关信息呢?可以通过V$CONTROLFILE_RECORD_SECTION来获得。

V$CONTROLFILE_RECORD_SECTION

V$CONTROLFILE_RECORD_SECTION displays information about the control file record sections.

Column Datatype Description
TYPE VARCHAR2(28) Identifies the type of record section:
  • DATABASE

  • CKPT PROGRESS

  • REDO THREAD

  • REDO LOG

  • DATAFILE

  • FILENAME

  • TABLESPACE

  • TEMPORARY FILENAME

  • RMAN CONFIGURATION

  • LOG HISTORY

  • OFFLINE RANGE

  • ARCHIVED LOG

  • BACKUP SET

  • BACKUP PIECE

  • BACKUP DATAFILE

  • BACKUP REDOLOG

  • DATAFILE COPY

  • BACKUP CORRUPTION

  • COPY CORRUPTION

  • DELETED OBJECT

  • PROXY COPY

  • BACKUP SPFILE

  • DATABASE INCARNATION

  • FLASHBACK LOG

  • RECOVERY DESTINATION

  • INSTANCE SPACE RESERVATION

  • REMOVABLE RECOVERY FILES

  • RMAN STATUS

  • THREAD INSTANCE NAME MAPPING

  • MTTR

  • DATAFILE HISTORY

RECORD_SIZE NUMBER Record size in bytes
RECORDS_TOTAL NUMBER Number of records allocated for the section
RECORDS_USED NUMBER Number of records used in the section
FIRST_INDEX NUMBER Index (position) of the first record
LAST_INDEX NUMBER Index of the last record
LAST_RECID NUMBER Record ID of the last record
 
 
怎样添加和移动控制文件
使用PFILE时添加或移动控制文件的步骤
  • 利用数据字典V$CONTROLFILE来获取现有控制文件的名字
  • 正常关闭ORACLE数据库
  • 将新的控制文件名添加到参数文件的CONTROL_FILES参数中
  • 使用操作系统命令将现有控制文件复制到指定位置
  • 重新启动ORACLE数据库
  • 利用数据字典V$CONTROLFILE来验证新的控制文件名字是否正确
  • 如果有误 重做上述操作 如果正确 删除无用的旧控制文件

使用SPFILE时添加或移动控制文件的步骤

  • 利用数据字典V$CONTROLFILE来获取现有控制文件的名字
  • 修改SPFILE 使用alter system set control_files命令来改变控制文件的位置
  • 正常关闭数据库
  • 使用操作系统命令将现有控制文件复制到指定位置
  • 重新启动ORACLE数据库
  • 利用数据字典V$CONTROLFILE来验证新的控制文件名字是否正确
  • 如果有误 重做上述操作 如果正确 删除无用的旧控制文件

你可能感兴趣的:(Oracle,Basics,oracle,数据库,file,database,archive,thread)