存档
topUNDO相关统计
在日常管理中,除了要用到上一篇文章中所说的那些数据字典之外,还有一个保存统计信息的数据字典是非常重要的,那就是著名的由V$SYSSTAT、V$SESSTAT、V$MYSTAT组成的系统信息统计家族,系统统计动态视图中所包含的统计信息阵容非常庞大,其中就包含了一些与UNDO相关的统计信息:
SQL> set lines 145 pages 9999
SQL> col name for a60
SQL> SELECT * FROM v$statname WHERE NAME LIKE '%undo%' ;
STAT# NAME CLASS STAT_ID
------ ------------------------------------------------------------ ------ ----------
89 DBWR undo block writes 8 111270822
216 undo change vector size 128 1465971540
217 transaction tables consistent reads - undo records applied 128 1054055970
219 data blocks consistent reads - undo records applied 128 2915445793
228 rollback changes - undo records applied 128 3616249137
242 auto extends on undo tablespace 128 3140365462
244 total number of undo segments dropped 128 3623640507
262 global undo segment hints helped 128 1791494885
263 global undo segment hints were stale 128 3309048233
264 local undo segment hints helped 128 1047863356
265 local undo segment hints were stale 128 2070200837
266 undo segment header was pinned 128 248401831
271 IMU undo retention flush 128 2087226422
277 IMU undo allocation size 128 244193920
285 SMON posted for undo segment recovery 128 2117898593
288 SMON posted for undo segment shrink 128 579492169
16 rows selected.
作者:马齿苋 | 链接:http://www.dbabeta.com/2010/undo-management_undo-generation-stat.html
topUNDO相关数据字典
topUNDO相关数据字典概览
9i是Oracle UNDO管理上面的一个分水岭,从手工管理到自动管理的分水岭。而与UNDO管理相关的数据字典也从手工UNDO管理的时代延续到了自动UNDO的时代,进入AUM时代之后,Oracle也新增了几个新的数据字典,但是那些延续下来的数据字典依然在UNDO的管理中发挥着重要的作用。
与UNDO相关的数据字典可以分成下面几类:
- 与UNDO管理直接相关的数据字典
- 9i之前手工管理时就存在的数据字典
- V$ROLLNAME:回滚段名称和回滚段ID对应表。
- V$ROLLSTAT:在使用AUM时,该视图保存着所有UNDO表空间中每一个已分配的回滚段当前状态以及相关的统计信息,不显示状态在OFFLINE的回滚段。
- DBA_ROLLBACK_SEGS:此字典显示所有回滚段的当前状态以及与存储空间分配相关的信息。
- 9i之后新增的数据字典
- V$UNDOSTAT:保存了某一时间段的整个UNDO表空间使用的统计信息以及UNDO自动优化的结果,默认情况下每10分钟增加一条记录,并只保留最近的576条(4天。在10g及之前版本中此记录为1008,或7天)的信息,超过期限的数据只能在DBA_HIST_UNDOSTAT中找到。此字典仅对自动UNDO管理模式有效。
- DBA_UNDO_EXTENTS:保存了UNDO表空间中所有已分配的数据区的存储空间分配情况与使用情况,是得到UNDO数据当前存在状态的一个重要的视图。
- DBA_HIST_UNDOSTAT:保存了所有V$UNDOSTAT所存在的数据的一个历史记录,10g开始新增字典。
- 9i之前手工管理时就存在的数据字典
- 与UNDO管理间接相关的数据字典
- 事务相关
- V$TRANSACTION:当前正在进行事务的信息,与UNDO管理相关的是当前事务所涉及的UNDO段,UNDO空间占用等等信息。具体的前面已经有介绍。
- UNDO表空间相关
- DBA_EXTENTS:与DBA_UNDO_EXTENTS类似。
- DBA_SEGMENTS:与DBA_ROLLBACK_SEGS类似。
- DBA_DATA_FILES:关联计算UNDO表空间大小而用。
- 事务相关
UNDO表空间实质上和其他普通表空间一样,因此适用于其他表空间的数据字典都适用于UNDO表空间。
字典V$ROLLSTAT和V$UNDOSTAT在名字上面看起来有点rollback segment与UNDO segment的感觉,但是实际上这两个视图的差别还是很大的,V$ROLLSTAT记录的是整个UNDO表空间各个回滚段使用情况的统计,属于横向的;而V$UNDOSTAT记录的则是各个时间段上面整个UNDO使用情况的统计,属于纵向的。
作者:马齿苋 | 链接:http://www.dbabeta.com/2010/undo-management_data-dictionary.html
本文主要是对UNDO管理中的一些概念进行强调说明,以及整理了一些UNDO管理中常用的数据字典等等做出详细的介绍。本文不会对UNDO的一些基本概念做详尽的介绍,如果你对于UNDO机制了解的还是不是很清楚的话请先阅读Oracle Concepts, Chapter 9 Data Concurrency and Consistency和Oracle Administrator’s Guide, Chapter 15 Managing Undo以及Oracle9i&10g编程艺术:深入数据库体系结构,第9章 redo与undo。
top实验版本
Oracle数据库版本:
SQL> SELECT * FROM V$VERSION; BANNER -------------------------------------------------------------------------------- Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit Production PL/SQL Release 11.1.0.7.0 - Production CORE 11.1.0.7.0 Production TNS for Linux: Version 11.1.0.7.0 - Production NLSRTL Version 11.1.0.7.0 - Production
操作系统版本:
SQL> !uname -a Linux orainst.desktop.mycompany.com 2.6.18-164.el5 #1 SMP Tue Aug 18 15:51:48 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux
作者:马齿苋 | 链接:http://www.dbabeta.com/2010/undo-management_auto-undo-management.html
近期评论