ITPub博客

首页 > 数据库 > Oracle > undo表空间使用情况

undo表空间使用情况

原创 Oracle 作者:fengsongtao123 时间:2016-07-17 23:07:21 0 删除 编辑
SQL> show parameter undo_tablespace

NAME                     TYPE     VALUE
------------------------------------ ----------- ------------------------------
undo_tablespace              string     UNDOTBS1


select b.file_name 物理文件名,
       b.tablespace_name 表空间,
       b.bytes/1024/1024 大小M,
       (b.bytes-sum(nvl(a.bytes,0)))/1024/1024 已使用M,
       substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) 利用率
  from dba_free_space a,dba_data_files b
 where a.file_id=b.file_id
 group by b.tablespace_name,b.file_name,b.bytes
 order by b.tablespace_name;

物理文件名                                              表空间                              大小M    已使用M 利用率
------------------------------------------------------- ------------------------------ ---------- ---------- --------------------
+DATA/eisoo/datafile/bank.269.914008875         BANK                   2746.5   2571.125 93.61
+DATA/eisoo/datafile/example.263.913925515        EXAMPLE                346.25   310.1875 89.58
+DATA/eisoo/datafile/sysaux.259.913925391        SYSAUX                      730    694.625 95.15
+DATA/eisoo/datafile/system.264.913925389        SYSTEM                      760   755.0625 99.35
+DATA/eisoo/datafile/undotbs1.258.913925391        UNDOTBS1                  105      26.25 25
+DATA/eisoo/datafile/undotbs2.265.913925729        UNDOTBS2                   50      9.625 19.25
+DATA/eisoo/datafile/users.257.913925391        USERS                       10      9.125 91.25


查看已使用的undo表空间中数据情况
SQL> SELECT tablespace_name,status,SUM (bytes)/1024/1024 MB FROM dba_undo_extents GROUP BY tablespace_name,status;

TABLESPACE_NAME            STATUS         MB
------------------------------ --------- ----------
UNDOTBS1               UNEXPIRED      8
UNDOTBS2               UNEXPIRED       6.25
UNDOTBS1               EXPIRED          15.25
UNDOTBS2               EXPIRED          2.375
UNDOTBS1               ACTIVE          2


ACTIVE 活动状态,说明当前这个数据区被某个正在进行的事务使用。
EXPIRED 已过期,说明已分配的数据区已经完成了它的使命,随时可以被分配给其它新的事务使用。
UNEXPIRED 未过期,说明分配的数据区已经不属于任何的活动事务,但是由于UNDO RETENTION设置的需要,一般情况下不会被回收重用。

SQL> select SEGMENT_NAME,bytes/1024/1024 MB,status from dba_undo_extents where tablespace_name='UNDOTBS1' and status='ACTIVE';

SEGMENT_NAME                   MB STATUS
------------------------------ ---------- ---------
_SYSSMU8_517538920$            1 ACTIVE
_SYSSMU2_2996391332$            1 ACTIVE

查看回滚段的使用情况
SELECT  e.sql_text,r.name 回滚段名,
    s.serial#,s.sid,s.username 用户名,
    t.used_ublk*8192/1024/1024||'M' 使用大小,
    substr(s.program, 1, 78) 操作程序
FROM   sys.v_$session s,sys.v_$transaction t,sys.v_$rollname r,sys.v_$sqlarea e
WHERE  t.addr = s.taddr and t.xidusn = r.usn and e.address=DECODE(s.sql_hash_value, 0, s.prev_sql_addr, s.sql_address) order by t.USED_UBLK desc;

SQL_TEXT                       回滚段名                          SERIAL#        SID 用户名     使用大小        操作程序
------------------------------ ------------------------------ ---------- ---------- ---------- --------------- ------------------------------
delete t where rownum<5        _SYSSMU8_517538920$             379     68 U01        .0078125M       sqlplus@rac1 (TNS V1-V3)
delete aa where empno=7788     _SYSSMU2_2996391332$              15     67 SCOTT      .0078125M       sqlplus@rac1 (TNS V1-V3)


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30373263/viewspace-2122117/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2015-07-25

  • 博文量
    96
  • 访问量
    259428