【OCP最新题库解析(052)--题2】...is true about FAST_START_MTTR_TARGET
在Oracle中,PMON清理失败进程的频率是多长?
Which two are true about FAST_START_MTTR_TARGET?
A. It is applicable only when the database is in ARCHIVELOG mode.
B. A lower value increases the time taken to perform instance recovery.
C. A higher value increases the I/O overhead.
D. I t is overridden by LOG_CHECKPOINT_INTERVAL.
E. I f it is set to 0, the MTTR Advisor is disabled.
A nswer : DE
对于 B 选项, MTTR 设置越小,实例恢复的时间越短。如果 MTTR 目标的值较小,则会因增加了数据文件写入次数而增加 I/O 开销(这会影响性能)。
对于 C 选项, MTTR 设置越大,则实例在崩溃后需要花费较长的时间才会恢复。如果 MTTR 目标的值较大,则会因减小了数据文件写入次数而 减小 I/O 开销 。
FAST_START_MTTR_TARGET 初始化参数可以简化实例或系统故障的恢复时间配置。 MTTR 指导可将 FAST_START_MTTR_TARGET 值转换为多个参数,以便在所需时间内(或者在尽量接近此时间的范围内)启用实例恢复。请注意, 将 FAST_START_MTTR_TARGET 参数显式设置为 会禁用 MTTR 指导。
FAST_START_MTTR_TARGET 参数的设置值必须支持系统的服务级协议。如果 MTTR 目标的值较小,则会因增加了数据文件写入次数而增加 I/O 开销(这会影响性能)。但是, 如果 MTTR 目标设置得过大,则实例在崩溃后需要花费较长的时间才会恢复。
通过参数 FAST_START_MTTR_TARGET 可以指定数据库执行单实例的崩溃恢复所要花费的秒数(由后台进程 SMON 实现),可以认为是一个加快实例恢复的参数。 基于内部统计信息,增量检查点会自动调整检查点目标,以满足 FAST_START_MTTR_TARGET 的要求。在 Oracle 8i 中,初始化参数 FAST_START_IO_TARGET 会使增量检查点自动调整其目标,从而使恢复所需的数据块数量不多于 FAST_START_IO_TARGET 设置的值。自 Oracle 9i 开始,已弃用此参数,取而代之的是参数 FAST_START_MTTR_TARGET ,并且该参数已成为优化增量检查点目标的首选方法。
从 Oracle 10g 开始, FAST_START_MTTR_TARGET 默认值为 ,即开启自调节检查点( self-tune checkpointing ),自调节检查点对应隐含参数为“ _DISABLE_SELFTUNE_CHECKPOINTING ”,该值默认为 FALSE 。
若显式设置 FAST_START_MTTR_TARGET 为 ,则在告警日志中会有提示:
MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set
若该参数设置为非 ,则表示开启 MTTR Advisory ( STATISTICS_LEVEL 参数必须为 TYPICAL 或者 ALL ),此时告警日志中不会再有以上信息提示了。若该值设置太小,则也会有提示:
FAST_START_MTTR_TARGET 45 is set too low, using minimum achievable MTTR 48 instead.
对于 MTTR 以下视图比较重要:
V$INSTANCE_RECOVERY.ESTIMATED_MTTR 显示当前预计的平均恢复时间( MTTR , Mean Time To Recovery ,以秒为单位)。即使未指定 FAST_START_MTTR_TARGET ,也同样会显示此值。
V$INSTANCE_RECOVERY.TARGET_MTTR 显示由系统强制执行的有效 MTTR 目标(以秒为单位)。
V$MTTR_TARGET_ADVICE 显示在当前的 MTTR 设置下由当前的工作负载产生的 I/O 数量,以及在其它 MTTR 设置下将由当前的工作负载产生的预计 I/O 数量。此视图可帮助用户在运行时性能和设置 FAST_START_MTTR_TARGET 以实现快速恢复之间进行权衡。若未开启 MTTR Advisory 则此视图内容为空。
参数 LOG_CHECKPOINT_INTERVAL 指定增量检查点目标应滞后于当前日志尾的最大 Redo 块数量。如果指定了 FAST_START_MTTR_TARGET ,那么就不应设置 LOG_CHECKPOINT_INTERVAL 或将其设置为 。在大多数 Unix 系统上,操作系统块大小都是 512 字节。也就是说,如果将 LOG_CHECKPOINT_INTERVAL 的值设置为 10000 ,那么就意味着增量检查点目标相对于当前日志尾的滞后不得超过 5M 。以此计算,如果 Redo 日志的大小为 20M ,那么会对每个日志产生 4 个检查点。 LOG_CHECKPOINT_INTERVAL 会影响检查点的发生时间,这意味着应特别注意此参数的设置,保持其随 Redo 日志文件的大小变化而更新。 检查点的频率是影响数据库从意外故障中恢复所需时间的因素之一。检查点之间的间隔越长,则在发生系统崩溃时,数据库恢复所需的时间就越长。 检查点间隔越短意味着数据库的恢复速度越快,但是代价是检查点操作会消耗更多的资源。此参数还会影响在恢复的前滚阶段期间完成数据库恢复操作所需的时间。实际的恢复时间取决于此时间,以及其它因素,例如故障类型(实例或系统崩溃、介质故障等)以及需要应用的归档 Redo 日志数量。