- 论坛徽章:
- 0
|
页码 : Page 2-17
日期:2012-1.17
自动撤销管理消除了回滚段管理的复杂性,另外系统自动调节去提供最佳的回滚信息以满足长时间查询语句运行对undo信息的需求, 自动撤销管理对于新装的db是默认打开的,安装进程会自动地创建一个undo表空间
Oracle有一个Undo Advisor,用来帮忙自动建立undo环境
这节包括以下内容:
# 手动undo管理
# undo 配额
# 自动undo的保持
……..
## 手动undo管理
Db也可以配置成手动undo管理模式,如果要变成自动的,必须先创建一个自动undo表空间且改变一个初始化参数,如果db是9i或是之后的版本,需要去变成自动的,可以参考Oracle
Database Upgrade Guide for instructions
注:回滚段空间管理非常复杂,oracle建议使用自动undo管理
# undo 配额
在自动undo管理,系统利用专用的事务实现对undo段的控制,并且控制undo段空间的分配,一个病态的事务将消耗巨大的undo空间,因此系统将不能正常地运行, Resource Manager可以指定UNDO_POOL来明确地控制大型事务,让dba把用户集合放入consumer groups,并给每组指定最大的undo空间的限制,当一个组达到了这个限制值时,组用户将不能做更多的更新,直到undo 空间被其他的事务成员释放出来
默认的UNDO_POOL是无限的,所以dba可以使用UNDO_POOL对特定的用户进行限制
# 自动undo的保持
当事务commit,undo数据将不再用于rollbackak或是事务恢复目的,但是,对于一致性读,长时间的查询可能需要老的undo信息,因为老的undo信息可以产生老的数据镜像块
|
|