作者:zhaojiapin_313 | 来源:互联网 | 2014-07-11 17:33
undo系列学习之oracleDBA常用的脚本DBA在维护oracle的过程,和undo有关的常用脚本。在前面的一些文章也涉及了挺多的,在此简单总结一点。1)怎样查询数据库当前某个session的事务所使用的回滚段大小?[sql...SyntaxHighlighter.all()
undo系列学习之oracle DBA常用的脚本
DBA在维护oracle的过程,和undo有关的常用脚本。在前面的一些文章也涉及了挺多的,在此简单总结一点。
1)怎样查询
数据库当前某个session的事务所使用的回滚段大小?
[sql]
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;
www.2cto.com
SID USERNAME XIDUSN USED_UBLK
---------- ------------------------------ ---------- ----------
147 HR 9 1
154 SCOTT 5 1
2)查询哪个用户正在使用回滚段的资源?
[sql]
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$
www.2cto.com
3)显示undo表空间统计信息--v$un
dostat,自动管理引入的,每隔10分钟汇报一次
[sql]
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段的统计信息
[sql]
select a.name,b.xacts,b.writes,b.extents
from v$rollname a,v$rollstat b
where a.usn=b.usn;
www.2cto.com
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
作者 linwaterbin