undo系列学习之undo段及区的状态和使用概述


undo表空间只做一件事:保存旧值。在AUM下,段是自动生成,区是自动分配与回收,且是不连续的。Oracle自动使用undo段,在某种意义上,我们只要关注undo表空间的大小就可以了。

查询当前哪个undo表空间被激活:

  1. sys@ORCL> show parameter undo_tablespace  
  2.   
  3. NAME                                 TYPE        VALUE  
  4. ------------------------------------ ----------- ------------------------------   
  5. undo_tablespace                      string      UNDOTBS1  

查询undo表空间里面有多少个数据文件:

  1. sys@ORCL> col file_name for a72  
  2. sys@ORCL> select file_name,bytes/1024/1024 m from dba_data_files where tablespace_name like '%UNDOTBS%';  
  3.   
  4. FILE_NAME                                                                         M  
  5. ------------------------------------------------------------------------ ----------   
  6. /u01/app/oracle/oradata/ORCL/datafile/o1_mf_undotbs1_8050fkc6_.dbf              100  
  7. /u01/app/oracle/oradata/ORCL/datafile/thinkundo.dbf                              30  

查询undo表空间里面在线有多少个段:

  1. sys@ORCL> select * from v$rollname;  
  2.   
  3.        USN NAME  
  4. ---------- ------------------------------   
  5.          0 SYSTEM  
  6.          1 _SYSSMU1$  
  7.          2 _SYSSMU2$  
  8.          3 _SYSSMU3$  
  9.          4 _SYSSMU4$  
  10.          5 _SYSSMU5$  
  11.          6 _SYSSMU6$  
  12.          7 _SYSSMU7$  
  13.          8 _SYSSMU8$  
  14.          9 _SYSSMU9$  
  15.         10 _SYSSMU10$  
  16.   
  17. 11 rows selected.  

查询段有多少个区和块:

  1. sys@ORCL> select segment_name,extents,blocks from dba_segments where segment_name='_SYSSMU3$';  
  2.   
  3. SEGMENT_NAME       EXTENTS     BLOCKS  
  4. --------------- ---------- ----------   
  5. _SYSSMU3$               17        256  

查询区有多少个块:

  1. sys@ORCL> select file_id,tablespace_name,segment_name,extent_id,block_id,blocks from dba_extents where  
  2.   2  segment_name='_SYSSMU3$';  
  3.   
  4.    FILE_ID TABLESPACE_NAME                SEGMENT_NAME     EXTENT_ID   BLOCK_ID     BLOCKS  
  5. ---------- ------------------------------ --------------- ---------- ---------- ----------   
  6.          2 UNDOTBS1                       _SYSSMU3$                0         41          8  
  7.          2 UNDOTBS1                       _SYSSMU3$                1         49          8  
  8.          2 UNDOTBS1                       _SYSSMU3$                2         17          8  
  9.          2 UNDOTBS1                       _SYSSMU3$                3         33          8  
  10.          2 UNDOTBS1                       _SYSSMU3$                4        161          8  
  11.          2 UNDOTBS1                       _SYSSMU3$                5        169          8  
  12.          2 UNDOTBS1                       _SYSSMU3$                6        177          8  
  13.          2 UNDOTBS1                       _SYSSMU3$                7        185          8  
  14.          2 UNDOTBS1                       _SYSSMU3$                8        201          8  
  15.          2 UNDOTBS1                       _SYSSMU3$                9        209          8  
  16.          2 UNDOTBS1                       _SYSSMU3$               10        217          8  
  17.          2 UNDOTBS1                       _SYSSMU3$               11        225          8  
  18.          2 UNDOTBS1                       _SYSSMU3$               12        233          8  
  19.          2 UNDOTBS1                       _SYSSMU3$               13        241          8  
  20.          2 UNDOTBS1                       _SYSSMU3$               14        249          8  
  21.          2 UNDOTBS1                       _SYSSMU3$               15        257          8  
  22.          7 UNDOTBS1                       _SYSSMU3$               16        521        128  
  23.   
  24. 17 rows selected.  

从这里我们也可以看出,undo段中的区的分配是不连续的。

  • 1
  • 2
  • 下一页

相关内容