DBA在维护Oracle的过程,和undo有关的常用脚本。在前面的一些文章也涉及了挺多的,在此简单总结一点。1)怎样查询数据库当前某个session的事务所使用的回滚段大小?
- sys@ORCL> select b.sid,b.username,a.xidusn,a.used_ublk
- 2 from v$transaction a,v$session b
- 3 where a.addr=b.taddr;
-
- SID USERNAME XIDUSN USED_UBLK
- ---------- ------------------------------ ---------- ----------
- 147 HR 9 1
- 154 SCOTT 5 1
2)查询哪个用户正在使用回滚段的资源?
- select s.username,u.name
- from v$transaction t,v$rollstat r,v$rollname u,v$session s
- where s.taddr=t.addr and
- t.xidusn=r.usn and
- r.usn=u.usn
- order by s.username
-
- USERNAME NAME
- ------------------------------ ------------------------------
- HR _SYSSMU9$
- SCOTT _SYSSMU5$
3)显示undo表空间统计信息--v$undostat,自动管理引入的,每隔10分钟汇报一次
- select to_char(begin_time,"hh24:mi:ss") begin_time,
- to_char(end_time,"hh24:mi:ss") end_time,
- undoblks,
- ssolderrcnt
- from v$undostat;
-
- BEGIN_TI END_TIME UNDOBLKS SSOLDERRCNT
- -------- -------- ---------- -----------
- 12:02:41 12:04:33 0 0
- 11:52:41 12:02:41 109 0
- 11:42:41 11:52:41 35 0
- 11:32:41 11:42:41 52 0
- 11:22:41 11:32:41 2 0
4)显示在线undo段的统计信息
- select a.name,b.xacts,b.writes,b.extents
- from v$rollname a,v$rollstat b
- where a.usn=b.usn;
-
- NAME XACTS WRITES EXTENTS
- ------------------------------ ---------- ---------- ----------
- SYSTEM 0 5080 6
- _SYSSMU1$ 0 128452 4
- _SYSSMU2$ 0 131562 4
- _SYSSMU3$ 0 153310 4
- _SYSSMU4$ 0 95228 4
- _SYSSMU5$ 1 11954 9
- _SYSSMU6$ 0 211674 10
- _SYSSMU7$ 0 365956 7
- _SYSSMU8$ 0 68614 17
- _SYSSMU9$ 1 30516 5
- _SYSSMU10$ 0 219062 17
undo系列学习之undo段和区的探究Oracle证明题:未提交的事务也可能被DBWn写进数据文件相关资讯 undo
- Oracle 11g undo_retention 以及 (05月28日)
- undo表空间使用率 (07/23/2015 16:29:56)
- undo表空间概述 (02/24/2015 20:32:43)
| - Oracle中利用undo进行数据的恢复操 (11/27/2015 09:31:30)
- undo表空间修复小结 (07/08/2015 08:43:13)
- Oracle 11gR2 Database UNDO表空间 (01/29/2015 11:30:59)
|
本文评论 查看全部评论 (0)