创建 UNDOTBS,并启动新创建的UNDO表空间
SQL> create undo tablespace undo03
2 datafile '/u01/app/oracle/oradata/undo03.dbf' size 20M;
只有一个UNDO 表空间起作用,
SQL> ALTER SYSTEM SET UNDO_TABLESPACE=UNDO03;
要删除活动的 UNDO 表空间,请执行以下操作:
切换到新的 UNDO 表空间
完成当前所有事务处理后,删除该表空间
首先确定,删除的UNDO表空间是不是在活动状态,
SQL>select a.name,b.status
2 from v$rollname a,v$rollstat b
3 where a.name in (select segment_name from dba_segments
4 where tablespace_name = 'UNDOTBS' )
5 AND a.usn = b.usn;
no rows selected
UNDO_RETENTION 参数
确定还原数据的保留时间,以便提供读一致性。保留还原数据可以进行更长时间的查询,
同时 UNDO 表空间所需的数据文件也越大。以秒为单位定义的 UNDO_RETENTION 参数可
以在初始化文件中设置,或使用 ALTER SYSTEM 命令来动态修改。
SQL> ALTER SYSTEM SET UNDO_RETENTION=1800;
如果值为 900,可以使还原数据保留 30 分钟。
如果 UNDO 表空间设置得太小,则即使设置了 UNDO_RETENTION,仍不能按指定的时间
保留还原数据。Oracle 服务器使用一种算法在 UNDO 表空间内分配空间,并在产生新的事
务处理失败之前,分配没有活动事务处理的未过期的空间。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30351669/viewspace-1754613/
,如需转载,请注明出处,否则将追究法律责任。