使用下面的公式来计算undo_retention参数的值:

undo_retention=undo size/(db_block_size * undo_block_per_sec)

可以通过提交下面的查询来计算数据库中实际产生的撤销数据:

  1. sys@ORCL> select sum(d.bytes) "undo"
  2. 2    from v$datafile d, v$tablespace t, dba_tablespaces s
  3. 3   where s.contents = 'UNDO'
  4. 4     and s.status = 'ONLINE'
  5. 5     and t.name = s.tablespace_name
  6. 6     and d.ts# = t.ts#;
  7. undo
  8. ----------
  9. 1048576000

可以通过下面的查询计算undo_block_per_sec:

  1. sys@ORCL> select max(undoblks / ((end_time - begin_time) * 3600 * 24)) "UNDO_BLOCK_PER_SEC"
  2. 2    FROM v$undostat;
  3. UNDO_BLOCK_PER_SEC
  4. ------------------
  5. .109816972   --因为这里是我的测试数据库。
  1. sys@ORCL> show parameter db_block_size
  2. NAME                                 TYPE        VALUE
  3. ------------------------------------ ----------- ------------------------------
  4. db_block_size                        integer     8192

以秒来计算undo_retention参数的值:

  1. sys@ORCL> select 1048576000/(0.495726495726496*8192) from dual;
  2. 1048576000/(0.495726495726496*8192)
  3. -----------------------------------
  4. 258206.897

v$undostat视图包含了数据库如何来使用撤销空间的统计信息,以及运行时间最长的查询等信息。可以使用这些信息计算当前数据库所处理的工作负载的撤销空间大小。v$undostat视图中每一行显示十分钟时间间隔的撤销统计信息。表中最多包含576行数据,每一行记录十分钟。因此,最多可以查看四天内的撤销空间使用情况。

BEGIN_TIME:时间段的起始时间。

END_TIME:时间段的截止时间。

UNDOBLKS:在十分钟的间隔内数据库所消耗的撤销数据块数量。

TXNCOUNT:在十分钟时间间隔内所执行的事务数。

MAXQUERYLEN:显示了在十分钟间隔内该实例上执行的,耗时最长的查询所花的时间(单位为秒)。

MAXQUERYID:时间间隔内运行时间最长的SQL语句的标识符。

NOSPACEERRCNT:数据库在撤销表空间中,因为整个空间都被活动事务所占用,因而没有足够空间来存放新撤销数据的次数。

TUNED_UNDORETENTION:数据库在提交撤销所属事务后,将会保留撤销数据的时长,单位为秒。

  1. sys@ORCL> select to_char(begin_time, 'hh24:mi:ss') BEGIN_TIME,
  2. 2         to_char(end_time, 'hh24:mi:ss') END_TIME,
  3. 3         maxquerylen,
  4. 4         nospaceerrcnt,
  5. 5         tuned_undoretention
  6. 6    from v$undostat;
  7. BEGIN_TI END_TIME MAXQUERYLEN NOSPACEERRCNT TUNED_UNDORETENTION
  8. -------- -------- ----------- ------------- -------------------
  9. 17:37:31 17:43:00        1281             0                2062
  10. 17:27:31 17:37:31         978             0                1759
  11. 17:17:31 17:27:31         372             0                1153
  12. 17:07:31 17:17:31         974             0                1755
  13. 16:57:31 17:07:31         368             0                1151
  14. 16:47:31 16:57:31         968             0                1809
  15. 16:37:31 16:47:31         363             0                1205
  16. 16:27:31 16:37:31         961             0                1805
  17. 16:17:31 16:27:31         358             0                1200
  18. 16:07:31 16:17:31         957             0                1799
  19. 15:57:31 16:07:31         353             0                1195
  20. 15:47:31 15:57:31         953             0                1794
  21. 15:37:31 15:47:31         349             0                1190
  22. 15:27:31 15:37:31         948             0                1790
  23. 15:17:31 15:27:31         342             0                1185
  24. 已选择15行。

oracle在一个给定的时间段,会根据执行时间最长的查询来提高或降低撤销保留时间。

undo_retention:确定最优的撤销保留时间的更多相关文章

  1. Cassandra--设置数据保留时间

    在Cassandra中,可以设置列的保留时间(Time To Live),当该列超过保留时间后,会下一次读取中被墓碑(Tombstone)标记,然后保留一个垃圾回收周期(表属性gc_grace_sec ...

  2. kafka不停止服务的情况下修改日志保留时间

    kafka配置文件如下: broker.id=1 port=9092 host.name=ssy-kafka1 num.network.threads=4 num.io.threads=8 socke ...

  3. awr快照保留时间修改

    ==============  awr快照保留时间修改 ============= 1.查询当前awr报告保留时间 col SNAP_INTERVAL for a20col RETENTION for ...

  4. Oracle 回滚段undo

    Undo的作用 数据的回滚 一致性读 表的闪回(事务,查询的闪回..) 失败会话的恢复 回滚rollback操作 SQL> archive log list; ORA-01031: 权限不足 S ...

  5. Oracle12c 性能优化攻略:攻略目录表

    注:本文来源于 [美] Sam Alapati ,   Darl Kuhn ,  Bill Padfield  著   朱浩波 翻译 <Oracle Database 12C 性能优化攻略> ...

  6. ocp11g培训内部教材_053课堂笔记(043)_数据备份

    053:数据库高级管理: 目录 第一部分:数据库备份与恢复... 4 第一章:备份恢复概述... 4 1.1 备份的意义: 4 1.2 数据库故障的类型:... 4 1.3 制定你的备份和恢复的计划. ...

  7. ORACLE闪回机制分析与研究应用

    1.查看数据库归档和闪回状态,及环境准备SQL> archive log list;SQL> select flashback_on from v$database;关闭数据库,启动归档和 ...

  8. oracle之三闪回flashback

    闪回 flashback 5.1 flashback 的功能:1)利用undo data回溯或撤销提交的数据,2)flashback log 使database 可以恢复到过去某个时间点,可以作为不完 ...

  9. Oracle与Mysql的高级查询与难点sql

    一.连接查询  1.内连接      内连接用于返回满足连接条件的所有记录.默认情况下,在执行连接查询时如果没有指定任何连接操作符,那么这些连接查询都属于内连接. Sql代码   1.   SELEC ...

随机推荐

  1. MySQL实用基础笔记

    /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权限验证登录MySQL */ mysq ...

  2. H5 progress标记

    进度条标记 示例:<progress class="processbar" id="processbar" max="100" val ...

  3. Arcgis Engine 添加一个Symbol符号样式步骤

    public static void DrawPictureMarkerSymbol(IGlobe globe, String layerName) { //添加一个图层 ESRI.ArcGIS.Ca ...

  4. xml文件的解析

    1. xml文件的解析 void CDataMgr::readStringData() { std::string xml_name = "config/string.xml"; ...

  5. Razor学习(二)@Html标签

    原文链接:http://blog.csdn.net/pasic/article/details/7093802 只是因为原文作者说的东西,还有很多作为基础知识的东西,我都没有掌握,所以总结在这里,蓝字 ...

  6. SQL Server数据库空间管理 (1)

    数据库经常遇到的问题: 1).数据库文件空间用尽  2).日志文件不停增长 3).数据库文件无法收缩  4).自动增长和自动收缩 本系列就以上面的4个问题入手分析并总结数据库空间的管理方法.   1. ...

  7. NDEF-NFC数据交换格式

    为实现NFC标签.NFC设备以及NFC设备之间的交互通信,NFC论坛(NFC FROUM)定义了称为NFC数据交换格式(NDEF)的通用数据格式.NDEF是轻量级的紧凑的二进制格式,可带有URL,vC ...

  8. 2015第6周三ztree的使用

    今天第一次真正在开发中使用了ztree组件,在实践过程体会了从生到熟的乐趣,从开始看不太懂ztree的api到后面熟悉理解其API布局,学习其中的各demo,感觉很不错,简单记录下使用ztree的经验 ...

  9. win7远程工具mstsc.exe

    相信很多人都用过类似QQ远程这样的远程工具,其实自xp开始windows就自带了远程工具mstsc.exe. 我只是介绍了如何使用远程工具登入别人的电脑. 首先,在开始->运行->msts ...

  10. Stackoverflow上人气最旺的10个Java问题(转ImportNew)

    本文转自:http://www.importnew.com/16841.html 写的确实太好了 1.为什么两个(1927年)时间相减得到一个奇怪的结果? 如果执行下面的程序,程序解析两个间隔1秒的日 ...