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

Oracle 12c 新特性之 temp undo

2017-05-09 13:07 393 查看
Oracle 12c R1 之前,临时表生成的undo记录是存储在undo表空间里的,通用表和持久表的undo记录也是类似的。而在 12c R12 的临时 undo 功能中,临时 undo 记录可以存储在一个临时表中,而无需再存储在 undo 表空间内。临时表的UNDO信息通常用于读一致性和事务回滚,在事务完成之后,无需进行恢复,所以也就不必永久保存。这个特性完全无损Oracle的事务一致性。这样做的主要好处在于:减少 undo 表空间,由于信息不会被记录在 redo 日志中,所以减少了 redo 数据的生成。你可以在会话级别或者数据库级别来启用临时
undo 选项。

启用 temp undo 好处:

1.减少 undo 表空间

2.减少 redo 数据

3.允许在ADG中对临时表进行DML操作

启用 temp undo 要求:

1.兼容性参数必须设置为 12.0.0 或更高

2.启用 c##andy.temp_undo_ENABLED 初始化参数

3.足够的空间来创建临时表空间

开启或者禁用 temp undo:

SQL> ALTER SYSTEM|SESSION SET TEMP_UNDO_ENABLED=TRUE;

SQL> ALTER SYSTEM|SESSION SET TEMP_UNDO_ENABLED=FALSE;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: