如何确定 Undo Tablespace 的大小

本文详细解析了如何根据当前系统事务量计算UndoTablespace大小的SQL公式,并提供了具体的使用方法,包括UPS的获取方式和overhead的取值。
导读:


确定当前系统当前事务量下 Undo Tablespace 大小的公式:
 UndoSpace = UR * UPS + overhead
其中:
  UR = UNDO_RETENTION
  UPS = 每秒使用的 UNDO 块数量
  overhead = 一些冗余的数据块数量,比如:transaction tables, bitmaps 等等
算出来的是 Undo Tablespace 需要的 BLOCK 数量,再乘以 db_block_size 就是需要的字节数了。

    google 了一下,网上有关于该公式的具体使用方法。其中 UPS 可以通过 V$UNDOSTAT 计算的到,overhead 一般取 24。

    这样可以得到计算 Undo Tablespace 的 SQL



SELECT (ur * (ups * dbs)) + (dbs * 24) AS "Bytes"
  FROM (SELECT VALUE AS ur
          FROM v$parameter
         WHERE NAME = 'undo_retention'),
       (SELECT (SUM (undoblks) / SUM (((end_time - begin_time) * 86400))
               ) AS ups
          FROM v$undostat),
       (SELECT VALUE AS dbs
          FROM v$parameter
         WHERE NAME = 'db_block_size');



本文转自

http://www.heysky.net/archives/2006/03/undotablespace.html
http://www.orafaq.com/node/1888
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值