文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Oracle10g的自动undo retention调整特性

Oracle10g的自动undo retention调整特性

时间:2010-09-08  来源:dbconf

Oracle10g中引入了一个新的自动调整undo retention的特性,本意是为了尽量避免ora-01555错误,但是自动的东西,有时候会不可避免的聪明过头,这个特性容易导致undo表空间过度使用无法回收。

在Oracle10gR2中只要使用了自动undo表空间管理,不管设置undo_retention为多少,自动undo retention特性都会启用。这时MMON进程每隔30秒会根据maxquerylen计算出一个tuned undo retention,然后将系统的undo retention设置为该值。如果undo tablespace的datafile是不能自动扩展的话,可能触发bug 5387030,tuned undo retenttion会变得非常大,导致undo表空间长时间无法回收空间。

通过以下查询可以查看tuned undo retention的值:

select tuned_undoretention, maxquerylen, maxqueryid from v$undostat;

在我们的一个案例中这个值最大达到了345600也就是96小时,使得undo表空间在事务比较频繁的情况下很快达到了100%的使用率,导致监控短信频繁响起。

知道了原因,解决方案也就有了:

  1. 10.2.0.2/10.2.0.3有相应的patch,这个bug在10.2.0.4中已经修复,建议找时间停机打patch
  2. 设置隐含参数_smu_debug_mode=33554432,将tuned_undoretention取值算法修正为max(maxquerylen secs + 300,undo_retention ),不建议使用
  3. 设置隐含参数_undo_autotune=false,关闭自动undo retention调整特性,不建议使用

参考:
Note:461480.1 FAQ – Automatic Undo Management (AUM) / System Managed Undo (SMU)
Note:240746.1 10g NEW FEATURE on AUTOMATIC UNDO RETENTION
Bug 5387030 – Automatic tuning of undo_retention causes unusual extra space allocation

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载