当前位置:七道奇文章资讯数据防范Oracle防范
日期:2011-03-21 00:21:00  来源:本站整理

<b>Oracle回滚段的概念,用法和筹划及问题的办理</b>[Oracle防范]

赞助商链接



  本文“<b>Oracle回滚段的概念,用法和筹划及问题的办理</b>[Oracle防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

回滚段管理一向是ORACLE数据库管理的一个难题,本文通过实例介绍ORACLE回滚段的概念,用法和筹划及问题的办理.

回滚段概述

回滚段用于存放数据改正之前的值(包含数据改正之前的位置和值).回滚段的头部包含正在利用的该回滚段事件的信息.一个事件只能利用一个回滚段来存放它的回滚信息,而一个回滚段可以存放多个事件的回滚信息.

回滚段的作用

事件回滚:当事件改正表中数据的时刻,该数据改正前的值(即前影像)会存放在回滚段中,当用户回滚事件(ROLLBACK)时,ORACLE将会操纵回滚段中的数据前影像来将改正的数据恢复到本来的值.

事件恢复:当事件正在处理的时刻,例程失利,回滚段的信息保存在重做日记文件中,ORACLE将在下次翻开数据库时操纵回滚来恢复未提交的数据.

读一致性:当一个会话正在改正数据时,其他的会话将看不到该会话未提交的改正.并且,当一个语句正在履行时,该语句将看不到从该语句开始履行后的未提交的改正(语句级读一致性).当ORACLE履行SELECT语句时,ORACLE按照当前的系统改变号(SYSTEM CHANGE NUMBER-SCN)来保证任何前于当前SCN的未提交的改变不被该语句处理.可以想象:当一个长时间的查询正在履行时,若其他会话改变了该查询要查询的某个数据块,ORACLE将操纵回滚段的数据前影像来构造一个读一致性视图.

事件级的读一致性

ORACLE普通供应SQL语句级(SQL STATEMENT LEVEL)的读一致性,可以用以下语句来实现事件级的读一致性.

SET TRANSACTION READ ONLY;
  或:
  SET TANNSACTION SERIALIZABLE;

以上两个语句都将在事件开始后供应读一致性.需求注意的是,利用第二个语句对数据库的并发性和性能将带来影响.

回滚段的种类

系统回滚段:当数据库成立后,将自动成立一个系统回滚段,该回滚段只用于存放系统表空间中对象的前影像.

非系统回滚段:拥有多个表空间的数据库至少应当有一个非系统回滚段,用于存放非系统表空间中对象的数据前影像.非系统回滚段又分为私有回滚段和公有回滚段,私有回滚段应在参数文件的ROLLBACK SEGMENTS参数中列出,以便例程启动时自动使其在线(ONLINE).公有回滚段普通在OPS(ORACLE并行服务器)中呈现,将在例程启动时自动在线.

DEFERED回滚段:该回滚段在表空间离线(OFFLINE)时由系统自动成立,当表空间再次在线(ONLINE)时由系统自动删除,用于存放表空间离线时产生的回滚信息.

回滚段的利用

分配回滚段:当事件开始时,ORACLE将为该事件分配回滚段,并将拥有最少事件的回滚段分配给该事件.事件可以用以下语句申请指定的回滚段:

SET TRANSTRACTION USE ROLLBACK SEGMENT rollback_segment

事件将以次序,循环的方法利用回滚段的区(EXTENTS),当当前区用满后移到下一个区.几个事件可以写在回滚段的同一个区,但每个回滚段的块只能包含一个事件的信息.

比方(两个事件利用同一个回滚段,该回滚段有四个区):

1、事件在举行中,它们正在利用回滚段的第三个区;

2、当两个事件产生更多的回滚信息,它们将持续利用第三个区;

3、当第三个区满后,事件将写到第四个区,当事件开始写到一个新的区时,称为翻转(WRAP);

4、当第四个区用满时,假如第一个区是闲暇或非活动(利用该区的全部事件完成而没有活动的事件)的,事件将接着利用第一个区.

回滚段的扩大(EXTEND)

当当前回滚段区的全部块用完而事件还需求更多的回滚空间时,回滚段的指针将移到下一个区.当最后一个区用完,指针将移到第一个区的前面.回滚段指针移到下一个区的前提是下一个区没有活动的事件,同时指针不能跨区.当下一个区正在利用时,事件将为回滚段分配一个新的区,这种分配称为回滚段的扩大.回滚段将一向扩大到该回滚段区的个数到达回滚段的参数MAXEXTENTS的值时为止.

  以上是“<b>Oracle回滚段的概念,用法和筹划及问题的办理</b>[Oracle防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .