Chinaunix首页 | 论坛 | 博客
  • 博客访问: 20420
  • 博文数量: 12
  • 博客积分: 455
  • 博客等级: 下士
  • 技术积分: 130
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-02 11:31
文章分类

全部博文(12)

文章存档

2010年(12)

我的朋友

分类: Oracle

2010-06-02 11:37:43

1、先解释下undo_retention

设置undo_retention,保证commit 后的数据在undo segment中保留多长时间。但是并不能保证commit后的undo 信息在undo_retention的时间内一定不被覆写,当undo segment不够时,还是会覆盖已commit的undo 信息。 

2、如果需要保证在undo_retention时间内undo 信息一定不被覆写的话,可以对undo segment设置RETENTION GUARANTEE。但是这个参数受到undo_retention和undo size的限制。如果undo size 太小,undo_retention设置太久,设置retention guarantee 时就会报错:

 

ORA-30036: unable to extend segment by 8 in undo tablespace 'UNDOTBS2'

 

3、设置该参数

 alter tablespace undotbs2 retention guarantee;

 

撤销该参数

 alter tablespace undotbs2 retention noguarantee;

 在DBA_TABLESPACES视图中增加了RETENTION字段用以描述该选项:
  
  SQL> select tablespace_name,contents,retention from dba_tablespaces;
  
   TABLESPACE_NAME        CONTENTS RETENTION
   ------------------------------ --------- -----------
  SYSTEM             PERMANENT NOT APPLY
  UNDOTBS1            UNDO   NOGUARANTEE
  SYSAUX             PERMANENT NOT APPLY
  TEMP              TEMPORARY NOT APPLY
  USERS             PERMANENT NOT APPLY
  EYGLE             PERMANENT NOT APPLY
  TEST              PERMANENT NOT APPLY
  ITPUB             PERMANENT NOT APPLY
  TRANS             PERMANENT NOT APPLY
  BIGTBS             PERMANENT NOT APPLY
  TEMP2             TEMPORARY NOT APPLY
  TEMP03             TEMPORARY NOT APPLY
  DFMBRC             PERMANENT NOT APPLY
  T2K              PERMANENT NOT APPLY
  
  14 rows selected

阅读(446) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:RAC ON WIN2K3

给主人留下些什么吧!~~