Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

26

积分

0

好友

5

主题
1#
发表于 2013-5-2 14:12:44 | 查看: 2379| 回复: 1
本帖最后由 Jer0n 于 2013-5-2 17:49 编辑

环境:RHEL5.5 x64 + Oracle 11.1.0.7.0

现状:
1, UNDO设置
  1. SQL> show parameter undo

  2. NAME                                 TYPE        VALUE
  3. ------------------------------------ ----------- ------------------------------
  4. undo_management                      string      AUTO
  5. undo_retention                       integer     900
  6. undo_tablespace                      string      APPS_UNDOTS1
复制代码
2,UNDO数据文件为fixed_size
  1. SQL> select file_name,tablespace_name,bytes/1024/1024,AUTOEXTENSIBLE from dba_data_files where tablespace_name='APPS_UNDOTS1';

  2. FILE_NAME                                TABLESPACE_NAME                BYTES/1024/1024 AUT
  3. ---------------------------------------- ------------------------------ --------------- ---
  4. /oracle/db/apps_st/data/undo01.dbf       APPS_UNDOTS1                             12288 NO
复制代码
3, UNDO TUNED_UNDORETENTION
  1. BEGIN_TIME            END_TIME              TUNED_UNDORETENTION                                                                     
  2. --------------------- --------------------- -------------------                                                                     
  3. 02-MAY-13 10:40       02-MAY-13 10:50                   7058731                                                                     
  4. 02-MAY-13 10:50       02-MAY-13 11:00                   6999264                                                                     
  5. 02-MAY-13 11:00       02-MAY-13 11:10                   6969871                                                                     
  6. 02-MAY-13 11:10       02-MAY-13 11:20                   6860267                                                                     
  7. 02-MAY-13 11:20       02-MAY-13 11:30                   5920566                                                                     
  8. 02-MAY-13 11:30       02-MAY-13 11:40                   6396227                                                                     
  9. 02-MAY-13 11:40       02-MAY-13 11:50                   6397659                                                                     
  10. 02-MAY-13 11:50       02-MAY-13 12:00                   6385033                                                                     
  11. 02-MAY-13 12:00       02-MAY-13 12:10                   6403607                                                                     
  12. 02-MAY-13 12:10       02-MAY-13 12:20                   6403106                                                                     
  13. 02-MAY-13 12:20       02-MAY-13 12:30                   6392924
复制代码
4, UNDO EXPIRED/UNEXPIRED
  1. SQL> SELECT tablespace_name,status,SUM(bytes)/1024/1024 "Bytes(M)"  
  2.   2  FROM   dba_undo_extents  
  3.   3  GROUP BY  tablespace_name, status;

  4. TABLESPACE_NAME                STATUS      Bytes(M)
  5. ------------------------------ --------- ----------
  6. APPS_UNDOTS1                   ACTIVE            10
  7. APPS_UNDOTS1                   UNEXPIRED 12276.6875
  8. APPS_UNDOTS1                   EXPIRED          .25
复制代码
疑问:
从官方文档的说明来看,当UNDO设置为fixed_size,undo_management=AUTO时,默认的UNDO_RETENTION=900不会生效,此时UNDO会根据当前表空间大小(12GB),和当前系统的状态自行调整当前的TUNED_UNDORETENTION大小,从v$UNDOSTA(或DBA_HIST_UNDOSTAT)来看,最近一段时间这里该参数值在增加。同时我的系统中,可用的UNDO空间已经没有了,而之前,可用的UNDO一直有2-3GB,且使用率相对固定,请问这里UNDO的空间需要继续增加吗?不增加的话,对系统有负面的影响吗?
2#
发表于 2013-5-2 14:19:02
TUNED_UNDORETENTION非常高 ==》 UNEXPIRED 大量未过期的undo extent

1、 建议手动设置undo_retention 并 取消undo autotune

2、 由于过高的TUNED_UNDORETENTION 导致大量未过期的undo extent  

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-16 12:43 , Processed in 0.050288 second(s), 20 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569