如何计算自动管理的UNDO表空间大小

简介:
 AUM(自动 undo 管理,Automatic Undo Management)几乎不需要配置。您基本上只需要定义将前映像保持可用的时间量。这是通过参数 UNDO_RETENTION 控制的,以秒为单位定义。因此,值 900 表示 15 分钟。
  一定要意识到,如果 undo 表空间中存在空间压力时,我们不保证前镜像一定会保留这么长时间。
  因此,以下公式可用于计算最佳 undo 表空间大小:
  从  Oracle 10g 开始,您可以选择使用 GUARANTEE 选项,以确保在定义的 undo_retention 时间之前,undo 信息不会被覆盖。
  UNDO表空间大小由三部分组成:
  (UR)UNDO_RETENTION 单位秒
  (UPS)每秒产生的undo 数据块的个数
  (DBS) 数据库数据文件块的大小DB_BLOCK_SIZE
  计算公式
  UndoSpace=UR*(UPS*DBS)
  其中UNDO_RETENTION 和 DB_BLOCK_SIZE两部分的信息可以在实例配置参数信息中获取。
  而第三部分UPS的信息需要从动态性能试图V$UNDOSTAT中获取
  下面是获取(UPS)每秒产生的undo 数据块的个数.
  SQL> SELECT undoblks/((end_time-begin_time)*86400) "Peak Undo Block Generation"
  FROM v$undostat WHERE undoblks=(SELECT MAX(undoblks) FROM v$undostat);
  其中列END_TIME and BEGIN_TIME 是日期类型,需要转换成秒(24 hours * 60 minutes * 60 seconds).
  下面的 SQL是计算UNDO表空间大小
SQL> SELECT (UR * (UPS * DBS)) AS "Bytes"
FROM (SELECT value AS UR FROM v$parameter WHERE name = 'undo_retention'),
(SELECT undoblks/((end_time-begin_time)*86400) AS UPS
FROM v$undostat
WHERE undoblks = (SELECT MAX(undoblks) FROM v$undostat)),
(SELECT block_size AS DBS
FROM dba_tablespaces
WHERE tablespace_name = (SELECT UPPER(value) FROM v$parameter WHERE name = 'undo_tablespace'));
  10g 和10g 更高的版本,可以使用下面的查询:
SQL>SELECT (UR * (UPS * DBS)) AS "Bytes"
FROM (select max(tuned_undoretention) AS UR from v$undostat),
(SELECT undoblks/((end_time-begin_time)*86400) AS UPS
FROM v$undostat
WHERE undoblks = (SELECT MAX(undoblks) FROM v$undostat)),
(SELECT block_size AS DBS
FROM dba_tablespaces
WHERE tablespace_name = (SELECT UPPER(value) FROM v$parameter WHERE name = 'undo_tablespace'));

最新内容请见作者的GitHub页:http://qaseven.github.io/
相关文章
|
存储 关系型数据库 MySQL
InnoDB 独立表空间与共享表空间
InnoDB 独立表空间与共享表空间
113 0
InnoDB 独立表空间与共享表空间
|
存储 关系型数据库 MySQL
独立表空间&系统表空间总结---innoDB表空间(三十五)
独立表空间&系统表空间总结---innoDB表空间(三十五)
|
存储 关系型数据库 MySQL
独立表空间结构(2)之段---InnoDB表空间(二十八)
独立表空间结构(2)之段---InnoDB表空间(二十八)
|
存储 Oracle 关系型数据库
Oracle 数据库表空间不足拓展方法实例演示,表空间剩余大小查看,通过新增表空间文件拓展表空间,表空间文件路径查看
Oracle 数据库表空间不足拓展方法实例演示,表空间剩余大小查看,通过新增表空间文件拓展表空间,表空间文件路径查看
266 0
Oracle 数据库表空间不足拓展方法实例演示,表空间剩余大小查看,通过新增表空间文件拓展表空间,表空间文件路径查看
|
Oracle 关系型数据库 数据库
|
Oracle 关系型数据库 数据库
|
监控 SQL 关系型数据库