1) undo段用于保存事务所修改的数据旧值,其中存储着被修改数据块的位置以及修改前数据。
undo数据的作用:回退事务,读一致性,事务恢复,倒叙查询。
2)管理undo表空间
Ø 使用undo参数
a) UNDO_MANAGEMENT 该初始化参数用于指定undo数据的管理方式,如果要使用自动管理模式,必须设置该参数为AUTO;如果手工管理模式,必须设置该参数为MANUAL.
b) UNDO_TABLESPACE 该初始化参数用于指定例程所使用的undo空间。
c) UNDO_RETENTION 该初始化参数用于控制undo数据的最大保留时间,其默认900秒。
Ø 建立undo表空间
a) 使用create database 命令建立undo表空间
create database db01
undo tablespace undotbs_01
datafile ‘/u01/oracle/rbdb1/udo0101.dbf’ size 10M;
b) 使用create undo tablespace命令建立undo表空间
SQL>create undo tablespace undotbs3
datafile ‘D:\demo\undotbs3.dbf’size 10M;
Ø 修改undo表空间
SQL>alter tablespace undotbs3 add datafile ‘D:\demo\undotbs3_2.dbf’
size 5M;
Ø 切换undo表空间
SQL>alter system set undo_tablespace=undotbs02;
Ø 删除undo表空间
SQL>drop tablespace undotbs3;
1) 监视undo空间信息
Ø 确定当前例程正在使用的undo表空间
SQL>show parameter undo_tablespace;
Ø 显示数据库的所有undo表空间
SQL>select tablespace_name from dba_tablespaces where contents=’undo’;
Ø 显示undo表空间统计信息
SQL>select to_char(begin_time,’HH24:MI:SS’) begin_time,
to_char(end_time,’HH24:MI:SS’) end_time, undoblks
from v$undostat