索引被更改时会生成undo,redo吗

     当表的索引列被更改,索引会生成undo,redo。下列就是实验:

SQL> create table bigtab as select * from dba_objects;

SQL> create index ind_object_id on BIGTAB (object_id);

SQL> select  v$statname.name,value
  2   from v$mystat, v$statname
  3  where v$mystat.statistic# =v$statname.statistic#
  4     and (v$statname.name ='redo size' or v$statname.name ='undo change vector size');

NAME                                                                  VALUE
---------------------------------------------------------------- ----------
redo size                                                          46265464
undo change vector size                               14142540

SQL> update bigtab set object_id=200;

49198 rows updated

SQL> commit;
SQL> select  v$statname.name,value
  2   from v$mystat, v$statname
  3  where v$mystat.statistic# =v$statname.statistic#
  4     and (v$statname.name ='redo size' or v$statname.name ='undo change vector size');

NAME                                                                  VALUE
---------------------------------------------------------------- ----------
redo size                                                          58150008
undo change vector size                              18286900

SQL> select (18286900-14142540)/1024/1024 undo,(58150008-46265464)/1024/1024 redo from dual;

      UNDO       REDO
---------- ----------
3.95236968 11.3339843

删除索引

SQL> update bigtab set object_id=200;

49198 rows updated

SQL>
SQL> select  v$statname.name,value
  2   from v$mystat, v$statname
  3  where v$mystat.statistic# =v$statname.statistic#
  4     and (v$statname.name ='redo size' or v$statname.name ='undo change vector size');

NAME                                                                  VALUE
---------------------------------------------------------------- ----------
redo size                                                          62470084
undo change vector size                               20325404

SQL> select (20325404-18286900)/1024/1024 undo,(62470084-58150008)/1024/1024 redo from dual;

      UNDO       REDO
-----------            ---------
1.94406890   4.11994552

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值