回滚段学习笔记

dba_free_space   每个表空间空闲的大小
dba_segments     计算别的段大小
可以算出每个表空间剩余多少,用了多少,总共多少.

dba_undo_extents 计算回滚段大小
计算回滚表空间的使用

dba_data_file    每个文件的大小
--------------查看使用的回滚段--------
select * from v$transaction

dba_rollback_segs 显示回滚段的信息
---------------------------------v$undostat-----------------------------------
   V$UNDOSTAT中的常用列
   Endtime:以10分钟为间隔的结束时间
   UndoBlocksUsed:使用的undo块总数
   TxnConcurrency:事务并发执行的最大数
   TxnTotal:在时间段内事务执行总数
   QueryLength:查询长度的最大值
   ExtentsStolen:在时间段内undo区必须从一个undo段转到另一个的次数
   SSTooOldError:在时间段内'Snapshot Too Old'错误发生的次数
   UNDOTSN:这段时间内最后活动的undo表空间ID

dba_undo_extents  显示每个回滚段的每个区的大小,状态
-------------------------v$rollstat   每个回滚段的统计信息------------------
V$ROLLSTAT中的常用列
?        USN:回滚段标识
?        RSSIZE:回滚段默认大小
?        XACTS:活动事务数

在一段时间内增量用到的列
?        WRITES:回滚段写入数(单位:bytes)
?        SHRINKS:回滚段收缩次数
?        EXTENDS:回滚段扩展次数
?        WRAPS:回滚段翻转(wrap)次数
?        GETS:获取回滚段头次数
?        WAITS:回滚段头等待次数
--------------------------------------undo$------------------------------------
显示每个回滚段的信息,回滚表空间删除里面的记录还在。在延迟块清除中会用到里面的信息

dba_segments 也有保存回滚段信息,和普通表显示的内容一样,可以把一个回滚段当作一个表,这个信息和dba_rollback_segs的信息一样
------------------------------v$transaction--------------------------
XIDUSN         回滚段号
XIDSLOT        slot号(对应回滚段头事务表中的位置)
UBAFIL
UBABLK          
status           状态
START_TIME       开始时间
START_SCNB       开始SCN              
START_UBAFIL     文件
START_UBABLK     开始块
SES_ADDR    和v$session 关联 saddr
USED_UBLK   用的块数
USED_UREC   事务项
LOG_IO        
PHY_IO        
CR_GET        
xid  事务号
在x$bh中的class字段,如果是回滚段块,假设回滚段USN为n,则回滚段头class为11+2n,回滚段块为12+2n
-----导出块头
alter system dump undo header '_SYSSMU1$';
-----导出块
alter system dump datafile 2 block 234
------更换回滚表空间
alter system set undo_tablespace=undo_2;
----创建回滚表空间
create undo tablespace UNDO_FOUR
 datafile '/opt/oracle/oradata/dbtest/undo04.dbf' size 320K reuse RETENTION GUARANTEE;
create undo tablespace undotbs2 datafile 'C:\oracle\product\10.2.0\oradata\orcl\undo_tbs2'
-----设置guarantee 属性
alter tablespace undo_small retention guarantee;

---------------------------回滚段的扩展原理、使用原理-----------------------------
-------------------回滚表空间建好--------------
系统就会自动创建回滚段视图dba_rollback_segs,dba_undo_extents里显示。状态为offline
-----------------------删除表空间后--------
如果表空间的段有活动事务则不能删除,可以查看v$rollstat 或者dba_rollback_segs查看是否有活动事务的段
dba_rollback_segs,dba_undo_extents自动消失
v$rollstat 只显示当前表空间的段状态和旧的表空间有活动事务的段的状态
---------------------利用alter system set undo_tablespace 修改表空间后。
v$rollstat 里显示新的表空间状态,同时对于旧的表空间中有事务的段,也显示状态为PENDING OFFLINE
dba_rollback_segs中,新的表空间状态为online,旧的表空间的段如果没活动事务则为offline,有活动事务为显示为online
---------------------缺省undo的管理 ------------
1 不能脱机
2 文件可以脱机,如果没活动事务
3 ORA-01552: 非系统表空间 'USERS' 不能使用系统回退段
  如果缺省undo 的文件都脱机,则 非系统表空间用户不能产生undo ,系统表空间用户可以

--------------------------undo_rention的管理-------------
alter tablespace undotbs1 retention guarantee;
当把UNDO_RENTION设置为0时,开启undo retention 自动优化,为了保证最长事务的UNDO,系统自动最大限制地不去增加EXTENT

 

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

转载于:http://blog.itpub.net/69265/viewspace-448507/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值