`
helloyesyes
  • 浏览: 1304467 次
  • 性别: Icon_minigender_2
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

Oracle 过时技术(一)--回滚段手动管理

阅读更多
回滚段概述
回滚段用于存放数据修改之前的值(包括数据修改之前的位置和值)。回滚段的头部包含正在使用的该回滚段事务的信息。一个事务只能使用一个回滚段来存放它的回滚信息,而一个回滚段可以存放多个事务的回滚信息。
回滚段的作用
事务回滚:当事务修改表中数据的时候,该数据修改前的值(即前影像)会存放在回滚段中,当用户回滚事务(ROLLBACK)时,ORACLE将会利用回滚段中的数据前影像来将修改的数据恢复到原来的值。
事务恢复:当事务正在处理的时候,例程失败,回滚段的信息保存在重做日志文件中,ORACLE将在下次打开数据库时利用回滚来恢复未提交的数据。
读一致性:当一个会话正在修改数据时,其他的会话将看不到该会话未提交的修改。而且,当一个语句正在执行时,该语句将看不到从该语句开始执行后的未提交的修改(语句级读一致性)。当ORACLE执行SELECT语句时,ORACLE依照当前的系统改变号(SYSTEM CHANGE NUMBER-SCN)来保证任何前于当前SCN的未提交的改变不被该语句处理。可以想象:当一个长时间的查询正在执行时,若其他会话改变了该查询要查询的某个数据块,ORACLE将利用回滚段的数据前影像来构造一个读一致性视图。
总结
用过ORACLE9i以前版本数据库的人都清楚,回滚段规划管理一直是一项不可忽视的工作。一个业务处理数据库一般需要建多个回滚段,有些系统甚至需要建上百个回滚段来满足并发事务的处理,对于大数据批处理一般还需要建立专用的大回滚段,以保证事务期间回滚段能保存全部的事务数据。
从ORACLE9i开始,一个很显著的新特性就是引入了自动的回滚段管理,只要建立一个撤销表空间就可以了,所有的事务回滚数据都可以在这个撤销表空间里管理,再也不用去为该建多少个多大的回滚段担忧了。采用自动管理后数据库也很少出现回滚段不够的错误。我想从9iR2后的数据库基本上都采用自动管理了,因为自动管理大大减少了数据库的维护工作,总体性能也很好。
分享到:
评论

相关推荐

    深入解析oracle的回滚段

    从9i版本开始,Oracle引入了自动管理回滚段(Automatic Rollback Segmentation),DBA不再需要手动创建、修改或删除回滚段,只需关注undo表空间(如UNDOTBS1)的空间管理。 回滚段的使用策略包括: - **分配回滚段...

    oracle回滚段使用率过高之解决方法

    Oracle 回滚段是一种重要的数据库机制,它用于存放数据修改之前的值,以便在事务回滚或恢复时使用。然而,回滚段使用率过高可能会导致数据库性能下降和空间不足的问题。本文将介绍 Oracle 回滚段的概念、用法和规划...

    oracle数据库回滚段专题解析

    - **分配回滚段**:事务开始时,Oracle会为该事务分配一个回滚段。通常会选择拥有最少事务的回滚段进行分配。事务也可以通过`SET TRANSACTION USE ROLLBACK SEGMENT`命令显式指定使用的回滚段。 - **使用模式**:...

    oracle 回滚段灾难恢复

    在Oracle数据库管理中,回滚段(Rollback Segment)是一个重要的组成部分,主要用于存储事务处理的回滚信息。当系统遇到回滚段灾难,如回滚段损坏或异常,导致数据库无法正常启动时,进行有效的灾难恢复是至关重要的...

    ORACLE回滚段的概念、用法和规划及问题解决

    在Oracle数据库中,**回滚段(Rollback Segment)**是一种特殊类型的段,用于存储事务处理过程中更改的数据的旧值。这些数据在事务处理期间被存储起来,以便在需要时能够恢复到更改之前的状态。当一个事务提交或回滚...

    oracle 回滚段探究

    3. **性能考虑**:合理的回滚段管理能够提高系统的性能。例如,减少回滚段的争用可以降低系统负载。 #### 六、回滚段的诊断与监控 1. **V$UNDOSTAT**:通过查询`V$UNDOSTAT`视图可以获取有关回滚段的信息,如当前...

    spring-控制事物回滚

    "spring-控制事物回滚"这个主题主要涉及Spring如何在出现异常时自动或手动触发事务的回滚,以及如何配置和使用Spring的事务管理机制。我们将深入探讨Spring事务管理的原理、API使用以及在实际开发中的应用。 首先,...

    Oracle数据库回滚段的故障分析与性能优化.pdf

    每个 Oracle 数据库实例都包含至少一个回滚段,不管事务是否被提交,被事务改变了的数据的旧值都将记录在回滚段中。回滚段的工作方式可以简单概括为自动扩展、循环分配。 二、回滚段常见故障分析 如果回滚段出现...

    一个回滚段清理的实例

    在上述情况中,数据库管理员发现了一个名为"undotbs1"的回滚表空间的数据文件达到了23GB,这可能表明存在大量的回滚活动或者回滚段管理不当,导致了空间的浪费。 1. **回滚段的检查**: 通过执行SQL查询,我们可以...

    oracle回滚段问题

    Oracle回滚段是数据库管理系统中的核心组件,主要负责存储数据修改前的状态,以支持事务的回滚、恢复和读一致性。回滚段是Oracle数据库管理的重要部分,对于DBA来说,理解和有效地管理回滚段至关重要。 回滚段的...

    Oracle回滚段管理知识.pptx

    Oracle 回滚段管理是数据库管理系统中的一项重要功能,它用于管理事务的回退和恢复。下面是 Oracle 回滚段管理的知识点总结: 一、回滚段简介 回滚段是 Oracle 数据库中的一种特殊类型的表空间,它用于存储事务的...

    oracle 回滚段

    Oracle 回滚段是 Oracle 数据库中的一种重要组件,它用于保存数据库修改前的数据,以便在需要时可以通过 ROLLBACK 命令恢复到修改前的数据。回滚段的设置对数据库的性能产生直接影响,特别是在更新密集的 OLTP 应用...

    回滚段参数修改

    【回滚段】是Oracle数据库管理系统中的一个重要组成部分,主要用于存储数据修改前的状态,确保事务的回滚、恢复和读一致性。在Oracle 8i及更早版本中,回滚段的管理尤其关键。 **一、回滚段的作用** 1. **事务回滚...

    回滚段管理

    回滚段管理是Oracle数据库管理的关键组成部分,主要负责处理事务的回滚、恢复以及提供读一致性,确保数据库的完整性和一致性。以下是对回滚段及其管理的深入解析: ### 回滚段工作原理 #### System回滚段与用户...

    流程框架snaker,用于 提交-审核-撤销-回滚

    Snaker流程框架是一款高效、灵活且可扩展的业务流程管理系统,专为企业的业务流程自动化设计。它提供了提交、审核、撤销和回滚等关键功能,以满足企业在日常运营中的各种流程需求。以下是对Snaker框架及其核心特性的...

    ORACLE数据库的回滚段.pdf

    Oracle数据库的回滚段是其核心组成部分之一,主要用于维护数据一致性与进行数据库恢复。回滚段,正如其名,是用来存放事务处理过程中增、删、改数据的历史信息,确保在事务回滚或数据库恢复时能正确操作。在Oracle 8...

Global site tag (gtag.js) - Google Analytics