参数CONTROL_FILE_RECORD_KEEP_TIME和MAXLOGHISOTRY
--**************************************************
-- 参数 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 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.
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 g 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 个记录 。
四、 快捷参考
有 关 性能 优 化 请参 考
共享池的 调 整 与优 化 (Shared pool Tuning)
Oracle 表 缓 存 (caching table)的使用
有 关 ORACLE 体系 结构请参 考
Oracle 联 机重做日志文件 (ONLINE LOG FILE)
Oracle 回 滚 (ROLLBACK)和撤 销 (UNDO)
Oracle 实 例和 Oracle数 据 库 (Oracle体系 结构 )
有 关闪 回特性 请参 考
Oracle 闪 回特性 (FLASHBACK DATABASE)
Oracle 闪 回特性 (FLASHBACK DROP & RECYCLEBIN)
Oracle 闪 回特性 (Flashback Query、Flashback Table)
Oracle 闪 回特性 (Flashback Version、Flashback Transaction)
有 关 基于用 户 管理的 备份 和 备份 恢 复 的 概 念 请参 考
Oracle 基于用 户 管理恢 复 的 处 理 ( 详细 描述了介 质 恢 复 及其 处 理 )
有 关 RMAN 的 备份 恢 复与 管理 请参 考
RMAN 备份 路 径 困惑 (使用plus archivelog 时 )
有 关 ORACLE 故障 请参 考
又一例SPFILE 设 置 错误导 致 数 据 库 无法 启动
对参数 FAST_START_MTTR_TARGET = 0 的 误 解及 设 定
SPFILE 错误导 致 数 据 库 无法 启动 (ORA-01565)
有 关 ASM 请参 考
有 关 SQL/PLSQL 请参 考
SQL 基 础 --> 集合 运 算 (UNION 与 UNION ALL)
SQL 基 础 --> 层 次化 查询 (START BY ... CONNECT BY PRIOR)
SQL 基 础 --> ROLLUP 与 CUBE 运 算符 实现数 据 汇总
PL/SQL --> 异 常 处 理 (Exception)
有 关 ORACLE 其 它 特性
使用OEM,SQL*Plus,iSQL*Plus 管理Oracle 实 例
日志 记录 模式 (LOGGING 、FORCE LOGGING 、NOLOGGING)
使用外部表管理Oracle 告警日志(ALAERT_$SID.LOG)
簇表及簇表管理(Index clustered tables)
system sys,sysoper sysdba 的 区别
ORACLE_SID、DB_NAME 、INSTANCE_NAME 、DB_DOMIAN 、GLOBAL_NAME
Oracle 补 丁全集 (Oracle 9i 10g 11g Path)
Oracle 10.2.0.1 升 级 到 10.2.0.4
相关推荐
- **CONTROL_FILE_RECORD_KEEP_TIME参数**:这个初始化参数决定了控制文件中用于RMAN的信息保留时间。默认值可以从7天到365天不等。通过设置该参数,管理员可以控制RMAN备份信息在控制文件中的保存期限,这对于后续...
10. **control_file_record_keep_time** 和 **control_files**:控制文件记录的保留时间以及控制文件的配置,对于数据库的恢复和稳定性至关重要。 11. **core_dump_dest**:指定在UNIX环境下生成核心转储的目录。 ...
4. `control_file_record_keep_time`:控制文件记录保留时间,设置为15天。 5. `cursor_sharing`:游标共享,设为"forced"强制所有查询使用相同的游标,减少解析开销。 6. `db_cache_size`:数据缓冲区缓存的大小,...
19. **control_file_record_keep_time**: 控制文件中记录的保留时间,以保持文件的大小。 20. **db_securefile**: 使用'SAFE'或'ALWAYS'设置,决定何时创建SecureFiles,以提高LOB数据的安全性和性能。 21. **job_...
1. **初始化Oracle实例配置文件:**首先需要编辑Oracle实例的`init<SID>.ora`或`spfile<SID>.ora`文件,设置`CONTROL_FILE_RECORD_KEEP_TIME`参数以延长控制文件记录保留时间。这是因为nocatalog模式下,控制文件中...
* control_file_record_keep_time:控制文件中可重新使用部分中的记录必须保留的最短时间(天数)。 * cursor_space_for_time:在一个游标引用共享 SQL 区时,确定将 SQL 区保留在共享池中还是从中按过期作废处理。 ...
* `CONTROL_FILE_RECORD_KEEP_TIME`:设置控制文件的记录保持时间,以避免控制文件过大。 * `OPEN_CURSORS`:设置打开游标的数量,以避免游标过多。 * `SESSION_CACHED_CURSORS`:设置会话缓存游标的数量,以提高...
接着,检查控制文件的相关信息,包括`control_file_record_keep_time`、`control_files`以及`control_management_pack_access`,这些可以通过`show parameter control`得到。同时,你需要确定redo log文件组,可以...
- **命令**: `ALTER SYSTEM SET control_file_record_keep_time=31 SCOPE=spfile;` - **是否需要重启**: 否。 - **说明**: 控制文件中记录的元数据保留时间。增加该值有助于在较长时间内追踪历史更改记录。 ##### ...
SQL> alter system set control_file_record_keep_time=30; RMAN 还可以用 Oracle 数据库的形式给库使用第二个存储位置。这需要在数据库中创建一个模式,称为 RMAN 目录。该目录应在数据库中创建,仅用于这个目的。...
- `CONTROL_FILE_RECORD_KEEP_TIME`初始化参数控制控制文件中备份记录的保留时间。 - **Media Management Software (MMS)**: 第三方软件,与RMAN接口集成,用于管理磁带备份等介质操作。 **2. RMAN Channels** - ...
移动控制文件涉及修改数据库参数`control_file_record_keep_time`以保留历史记录,并通过`ALTER SYSTEM SET CONTROL_FILE`语句更新数据库的控制文件路径。 2. **增加控制文件的多路复用**: 多路复用控制文件是...
- **控制文件自动备份**:为了防止控制文件损坏导致数据库无法恢复,可以通过设置 `control_file_record_keep_time` 参数来控制控制文件中记录的保留时间。 ```sql ALTER SYSTEM SET control_file_record_keep_...
### CONTROL_FILE_RECORD_KEEP_TIME参数 `CONTROL_FILE_RECORD_KEEP_TIME`是Oracle数据库的一个重要参数,用于指定控制文件中保留恢复元数据的时间长度。默认情况下,此参数设置为7天。增加这个值可以帮助RMAN在更...
`CONTROL_FILE_RECORD_KEEP_TIME`参数决定这些记录的保留时间。 6. **Media Management Software**:RMAN可以通过第三方介质管理软件与物理存储设备交互,如磁带库,执行设备控制、标签管理等功能。这种介质管理软件...
可重用的部分的大小可用CONTROL_FILE_RECORD_KEEP_TIME参数来控制,该参数的默认值为7天。 该命令用于了解控制文件的组成和可重用的部分的大小控制。 11. 查看控制文件的配置:SELECT type, record_size, records_...
- `control_file_record_keep_time`:定义控制文件中保留元数据信息的天数,默认为7天。 - `DB_RECOVERY_FILE_DEST`:设置快速恢复区的路径。 - `DB_RECOVERY_FILE_DEST_SIZE`:设定快速恢复区的大小。 **RMAN命令*...
控制文件分为可重用和不可重用两部分,可重用部分的保留时间可通过`CONTROL_FILE_RECORD_KEEP_TIME`参数设置。不可重用部分的大小受`MAXDATAFILES`, `MAXINSTANCES`, `MAXLOGFILES`, `MAXLOGHISTORY`, `...