oracle数据库管理-undo retention参数

最近因为undo表空间使用过大,需要写一些文档,翻看官方文档,找些语句,顺便稍微翻译一下。

该参数在11gr2-12cr2版本的官网文档说明未发生根本性改变

UNDO_RETENTION

属性

描述

参数类型

整数

默认值

900

可修改

alter system

PDB

可修改(12c新增)

值的范围

0-2147483647

基础参数

NO

oracle RAC

oracle建议在多个实例上使用相同的值

对于自动扩展的undo 表空间,该参数(以秒为单位)指定回滚保留的最低阈值。并自动调整undo保留的时间以满足undo查询的要求。对于固定大小的undo表空间,系统自动调整到最大可能undo保留时间,基于undo表空间的大小和使用历史,并忽略UNDO_RETENTION参数。例外的情况:retention guarantee is enabled--不太懂。

该参数的设置应满足系统闪回的要求。LOB不支持undo的自动调整。对LOB字段undo保留值的调整基于UNDO_RETENTION参数。

只有在undo表空间空间充足的情况下,该参数可以被认为有效,如果一个活动的事务要求undo空间并且undo表空间没有可用空间,系统会开始重用未到期的undo空间。此操作可能会导致某些查询失败,并报出"ORA-01555 snapshot too old“ 错误。

可以通过查询动态性能视图V$UNDOSTAT中的TUNED_UNDORETENTION列来获取当前数据库的undo表空间能保留的undo时间总数。

可以参考以下文档:

Oracle Database SQL Language Reference for more information about creating undo tablespaces

Oracle Database Administrator's Guide for more information about managing undo data

你可能感兴趣的:(oracle数据库管理-undo retention参数)