背景:
阅读新闻
Oracle 12C 新特性 Temporary UNDO 临时回滚段
[日期:2014-05-23] 来源:Linux社区 作者:paulyibinyi [字体:]
Oracle 12C 新特性 Temporary UNDO 可以减少存储在undo表空间的生成量和重做日志的生成
[oracle@db12c ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.1.0 Production on Mon Apr 28 14:18:21 2014
Copyright (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 processed
SQL> 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 processed
SQL> 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 processed
SQL> 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 processed
SQL>