参数CONTROL_FILE_RECORD_KEEP_TIME和MAXLOGHISOTRY

来源:互联网 发布:知乎昆明婚纱照 编辑:程序博客网 时间:2024/05/22 06:25

--**************************************************

-- 参数 CONTROL_FILE_RECORD_KEEP_TIME 和MAXLOGHISOTRY

--**************************************************

 

    参数 control_file_record_keep_time 是一  位于控制文件中比  重要的 参数 之一。 它决 定了控制文件里可重  使用的 记录 所能保存的

最小天      新的 记录 需要添加到可重用 记录 的空 间时   且最老的 记录 在可重用 记录    还没 有老化,即 实际 保留的天  未超 过这

个参数规 定的天    控制文件中可重用 记录 部分的空 间将 被自 动扩 展,此  控制文件尺寸 将会变 大。

 

一、control_file_record_keep_time 定  信息    

    1 . 参数 的描述信息

   

        Property              Description

        -----------------------------------------------------------

        Parameter type         Integer

        Default value         7 (days)         -- 缺省 

        Modifiable            ALTER SYSTEM     -- 使用ALTER SYSTEM 修改

        Range of values         0 to 365 (days)  --   的范 围从 0-365

        Basic                No

        ----------------------------------------------------------   

    2 . 官方定 

 

            CONTROL_FILE_RECORD_KEEP_TIME specifies the minimum number of days before reusable record in the control file

        can be reused. In the event a new record needs to be added to 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.

 

    3 . 可重用的模 

 

         ARCHIVED LOG                       BACKUP CORRUPTION

        BACKUP DATAFILE                    BACKUP PIECE

        BACKUP REDO LOG                    BACKUP SET

        COPY CORRUPTION                    DATAFILE COPY

        DELETED OBJECT                     LOGHISTORY

        OFFLINE RANGE                     

 

二、MAXLOGHISOTRY

 

        这个参数 ,咋一看,貌似眼熟的不得了。 没错 ,在  建控制文件的  候被使用。

         印象?    里: Oracle 控制文件( CONTROLFILE )

       

         字面上的意思  分析即可知, 该参数 用于控制日志   记录 。即 归档 日志的 记录数应 在控制文件   MAXLOGHISOTRY 参数 的范 

      ,或者  v$log_history 视图 里所有 归档 日志文件 总数   小于等于 MAXLOGHISOTRY     

   

        一旦 归档 日志超 过这个 最大  目,且 参数 control_file_record_keep_time  定的   备份 的保留策略之外,即可以被重用或老化

         则从头 覆盖以前的 归档 志文件  。也即是 v$log_history 里的相 应记录会   除。

           

          上,  在初始化控制文件的  候,   MAXLOGHISOTRY  值来决   保存 归档 日志 记录 信息分配多大的空   该值设 定之后,

    其分配的空 间将 不再 动态扩 展。我  知道 RMAN 备份   ,日志 归档时 的信息都    在控制文件或恢    之中。  然已分配存   

    不能自 动扩 展,那新的 归档 信息  如何追加呢?即由 参数 control_file_record_keep_time 中保留 时间来 确定是否 将过时 的信息  覆盖。

   

        注:v$log_history 在Oracle 8 i 后由v$archived_log 代替。   maxloghistory 不限制能 够插 入到 v$archived_log 中的 记录数 

       

        SQL select from v$version;

       

        BANNER

        ----------------------------------------------------------------

         Oracle Database 10 Enterprise Edition Release 10.2 .0.4.0 - 64 bi

        PL / SQL Release 10.2 .0.4.0 - Production

        CORE     10.2 .0.4.0      Production

        TNS for Solaris: Version 10.2 .0.4.0 - Production

        NLSRTL Version 10.2 .0.4.0 - Production   

       

        --  看几  最大的 MAX  置的 

        SQL select TYPE ,RECORDS_TOTAL from v$controlfile_record_section  

          2   where type in ( 'REDO LOG' , 'DATAFILE' , 'CKPT PROG%' , 'REDO THREAD' , 'ARCHIVED LOG' );

       

        TYPE                          RECORDS_TOTAL

        ---------------------------- -------------

        REDO THREAD                               8      --> MAXINSTANCES

        REDO LOG                                 32      --> MAXLOGFILES 

        DATAFILE                                968      --> MAXDATAFILES

        ARCHIVED LOG                          83536      --> MAXLOGHISTORY

 

        --   ARCHIVED LOG 的明  信息

        SQL select from v$controlfile_record_section where type like '%ARCHIVED LOG%' ;

       

        TYPE                          RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID

        ---------------------------- ----------- ------------- ------------ ----------- ---------- ----------

        ARCHIVED LOG                          584          83536         83536        52748       52747      679267

       

         上面的 查询 中可以看到  MAXLOGHISTORY 分配的空  大小以及 记录总数 ,已是使用的 记录总数 

       

        视图 v$archived_log  记录  归档 日志 

        SQL select count (*) from v$archived_log;

 

          COUNT (*)

        ----------

             83536

 

        SQL select min (FIRST_TIME), min (COMPLETION_TIME), max (FIRST_TIME), max (COMPLETION_TIME) from

          2   v$archived_log;

       

        MIN (FIRST_TIME)     MIN (COMPLETION_TIME MAX (FIRST_TIME)     MAX (COMPLETION_TIME

        ------------------- ------------------- ------------------- -------------------

        2011 - 04 - 24 12 : 59 : 01 2011 - 04 - 24 13 : 02 : 00 2011 - 06 - 05 23 : 00 : 49 2011 - 06 - 06 03 : 19 : 21

       

        在使用RMAN 备份  备份 信息  有使用恢    的情  下,即使用控制文件      信息。那  control_file_record_keep_time

      定的 值应当轻   得大于  用所需 备份 保留的 时间 ( 基于 时间 的保留 参数 ) 

   

        假定使用控制文件保存 备份   信息,每周  行一次全  ,且 备份 保留恢  窗口  7 天,   议将 control_file_record_keep_time

       10 或14 。

 

三、 Log History 超出MAXLOGHISTORY 的情形

        有些情  下, Log History 超出MAXLOGHISTORY 的情形,什   Log History 超出MAXLOGHISTORY ?那不是   动扩   ?是的,正常

       应当扩 展控制文件。 Log History 大于MAXLOGHISTORY 而  有自  控制  展的情形是存在的。     况则 是空  分配所引起的。

       

        假定有下面的情形,  建控制文件  指定 MAXLOGHISTORY  值为 100 ,而Log History 中  保留了 227 条记录  Why ?

       

           建控制文件   会为   部分分配相  的大小和空  。而每  部分的空  分配根据 Oracle   而不是依据 当时设 定的 记录数 

    在控制文件中, log history  单条记录 大小通常是固定的,  36   。因此, 100 个记录  MAXLOGHISTORY )需要3600    。控制文

      的大小 与数   的大小一  ,同   db_block_size 控制。因此特定  目的 块将为 Log History 部分分配。例如,如果

    DB_BLOCK_SIZE  8192 ,那   个块 就足  了。在 这个块 中,我   8192/ 36 ,大  227 个记录 。如果 DB_BLOCK_SIZE  2048 ,那 么将 

配2  快,但是只   113 个记录 

 

 

From:http://blog.csdn.net/robinson_0612/article/details/6530904

 

 

原创粉丝点击