您的位置:首页 > 数据库 > Oracle

undo基础内容

2014-04-28 11:50 399 查看
关于undo的基础知识,建议参考oracle官方文档中的Administrator's Guide中的undo部分
一、什么是undo(引用官方文档)

Every Oracle Database must have a method of maintaining information that is used to roll back, or undo, changes to the database. Such information consists of records of the actions of transactions, primarily before they are committed. These records are collectively
referred to as undo.

二、undo的作用(引用官方文档)

Roll back transactions when a ROLLBACK statement is issued

Recover the database

Provide read consistency​

Analyze data as of an earlier point in time by using Oracle Flashback Query

Recover from logical corruptions using Oracle Flashback features

When a ROLLBACK statement is issued, undo records are used to undo changes that were made to the database by the uncommitted transaction. During database recovery, undo records are used to undo any uncommitted changes applied from the redo log to the datafiles.
Undo records provide read consistency by maintaining the before image of the data for users who are accessing the data at the same time that another user is changing it.

三、undo相关参数

参数名

描述
undo_retention

指定事务commit或者rollback后,对应的undo段 的过期(expired )时间,过期的段可以被后续事务重用,单位为分钟
undo_tablespace

undo自动管理方式下,指定管理undo信息的表空间
_undo_autotune禁用undo的自动调整
UNDO_MANAGEMENT指定undo段(非系统)的管理方式,9i以后默认为自动管理,推荐设置为自动管理方式
四、undo相关视图

ViewDescription
V$UNDOSTATContains statistics for monitoring and tuning undo space. Use this view to help estimate the amount of undo space required for the current workload. The database also uses this information to help tune undo usage in the system. This view is meaningful only in automatic undo management mode.
V$ROLLSTATFor automatic undo management mode, information reflects behavior of the undo segments in the undo tablespace
V$TRANSACTIONContains undo segment information
DBA_UNDO_EXTENTSShows the status and size of each extent in the undo tablespace.
DBA_HIST_UNDOSTATContains statistical snapshots of V$UNDOSTAT information. 
五、undo表空间的使用方式

由于undo段空间保存的内容为数据块改变的前映像数据,因此这些空间的内容是循环使用,跟redo日志文件差不多,基本都是最早被使用的内容被最先覆盖。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle 数据库 undo