undo系列学习之Oracle DBA常用的脚本


DBA在维护Oracle的过程,和undo有关的常用脚本。在前面的一些文章也涉及了挺多的,在此简单总结一点。

1)怎样查询数据库当前某个session的事务所使用的回滚段大小?

  1. sys@ORCL> select b.sid,b.username,a.xidusn,a.used_ublk  
  2.   2         from v$transaction a,v$session b  
  3.   3        where a.addr=b.taddr;  
  4.   
  5.        SID USERNAME                           XIDUSN  USED_UBLK  
  6. ---------- ------------------------------ ---------- ----------   
  7.        147 HR                                      9          1  
  8.        154 SCOTT                                   5          1  

2)查询哪个用户正在使用回滚段的资源?

  1. select s.username,u.name   
  2.   from v$transaction t,v$rollstat r,v$rollname u,v$session s  
  3.  where s.taddr=t.addr and  
  4.        t.xidusn=r.usn and  
  5.        r.usn=u.usn   
  6.  order by s.username  
  7.   
  8. USERNAME                       NAME  
  9. ------------------------------ ------------------------------   
  10. HR                             _SYSSMU9$  
  11. SCOTT                          _SYSSMU5$  

3)显示undo表空间统计信息--v$undostat,自动管理引入的,每隔10分钟汇报一次

  1. select to_char(begin_time,'hh24:mi:ss') begin_time,  
  2.        to_char(end_time,'hh24:mi:ss') end_time,  
  3.        undoblks,  
  4.        ssolderrcnt  
  5.   from v$undostat;  
  6.   
  7. BEGIN_TI END_TIME   UNDOBLKS SSOLDERRCNT  
  8. -------- -------- ---------- -----------   
  9. 12:02:41 12:04:33          0           0  
  10. 11:52:41 12:02:41        109           0  
  11. 11:42:41 11:52:41         35           0  
  12. 11:32:41 11:42:41         52           0  
  13. 11:22:41 11:32:41          2           0  

4)显示在线undo段的统计信息

  1. select a.name,b.xacts,b.writes,b.extents  
  2.   from v$rollname a,v$rollstat b  
  3.  where a.usn=b.usn;  
  4.   
  5. NAME                                XACTS     WRITES    EXTENTS  
  6. ------------------------------ ---------- ---------- ----------   
  7. SYSTEM                                  0       5080          6  
  8. _SYSSMU1$                               0     128452          4  
  9. _SYSSMU2$                               0     131562          4  
  10. _SYSSMU3$                               0     153310          4  
  11. _SYSSMU4$                               0      95228          4  
  12. _SYSSMU5$                               1      11954          9  
  13. _SYSSMU6$                               0     211674         10  
  14. _SYSSMU7$                               0     365956          7  
  15. _SYSSMU8$                               0      68614         17  
  16. _SYSSMU9$                               1      30516          5  
  17. _SYSSMU10$                              0     219062         17  

相关内容