Welcome 微信登录

首页 / 数据库 / MySQL / Oracle 12C 新特性 Temporary UNDO 临时回滚段

Oracle 12C 新特性 Temporary UNDO  可以减少存储在undo表空间的生成量和重做日志的生成
 
[oracle@db12c ~]$ sqlplus / as sysdbaSQL*Plus: Release 12.1.0.1.0 Production on Mon Apr 28 14:18:21 2014Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
 Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
 With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
 
SQL> create global temporary table test as select * from dba_objects where 1=0;Table created.SQL> alter session set temp_undo_enabled=false;Session altered.SQL> set autotrace traceonly statistics
 SQL>
SQL> insert into test select * from dba_objects;19397 rows created.
Statistics
 ----------------------------------------------------------
          83  recursive calls
        1690  db block gets
        2621  consistent gets
         5  physical reads
      121876  redo size
       855  bytes sent via SQL*Net to client
       842  bytes received via SQL*Net from client
         3  SQL*Net roundtrips to/from client
         3  sorts (memory)
         0  sorts (disk)
     19397  rows processedSQL> update test set object_name=lower(object_name);19397 rows updated.
Statistics
 ----------------------------------------------------------
         6  recursive calls
       615  db block gets
       375  consistent gets
         0  physical reads
   1310712  redo size
       857  bytes sent via SQL*Net to client
       846  bytes received via SQL*Net from client
         3  SQL*Net roundtrips to/from client
         1  sorts (memory)
         0  sorts (disk)
     19397  rows processedSQL> conn / as sysdba
 Connected.
 SQL>  alter session set temp_undo_enabled=true
 2  ;Session altered.SQL> set autotrace traceonly statistics
 SQL>
SQL>
SQL> insert into test select * from dba_objects;19397 rows created.
Statistics
 ----------------------------------------------------------
         5  recursive calls
        1695  db block gets
        2517  consistent gets
         0  physical reads
       280  redo size
       844  bytes sent via SQL*Net to client
       842  bytes received via SQL*Net from client
         3  SQL*Net roundtrips to/from client
         1  sorts (memory)
         0  sorts (disk)
     19397  rows processedSQL> update test set object_name=lower(object_name);19397 rows updated.
Statistics
 ----------------------------------------------------------
         2  recursive calls
     22237  db block gets
       827  consistent gets
         0  physical reads
         0  redo size
       855  bytes sent via SQL*Net to client
       846  bytes received via SQL*Net from client
         3  SQL*Net roundtrips to/from client
         1  sorts (memory)
         0  sorts (disk)
     19397  rows processedSQL>调整Oracle回滚的速度 http://www.linuxidc.com/Linux/2014-03/99098.htmOracle 回滚(ROLLBACK)和撤销(UNDO) http://www.linuxidc.com/Linux/2013-08/88792.htmOCP知识点讲解 之 Undo回滚基础知识 http://www.linuxidc.com/Linux/2012-11/73949.htmOracle事务 行级锁 保存点 回滚 提交 http://www.linuxidc.com/Linux/2012-07/66120.htmOracle基本步骤前滚和回滚 http://www.linuxidc.com/Linux/2012-04/58727.htmOracle 回滚演示 rollback演示 http://www.linuxidc.com/Linux/2011-09/43833.htm更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12本文永久更新链接地址