8管理回滚段-课件(PPT-精).ppt

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8管理回滚段-课件(PPT-精)

管理回滚段 目标 在完成本节课之后,你应该能够: 使用适当的存储设置创建回滚段 维护回滚段 计划回滚段的大小和数目 从数据字典中获取回滚段的信息 解决常见的回滚段问题 回滚段 回滚段:目标 读一致性 回滚段的类型 SYSTEM:用于SYSTEM 表空间中的对象 Non-SYSTEM: 用于其他表空间中的对象 私有:单个实例访问 公共:任何实例均可以访问 延迟:在表空间通过立即选项设置为脱机时使用 事务和回滚段 回滚段的增长 回滚段的缩小 创建回滚段 CREATE ROLLBACK SEGMENT rbs01 TABLESPACE rbs STORAGE ( INITIAL 100K NEXT 100K MINEXTENTS 20 MAXEXTENTS 100 OPTIMAL 2000K ); 把回滚段设置为联机 使用下面的命令,使回滚段可用 指定下面的初始化参数,保证回滚段在实例启动时就处于联机状态: 修改回滚段存储设置 使用ALTER ROLLBACK SEGMENT 命令 可以修改OPTIMAL 或MAXEXTENTS 从回滚段中释放空间 使用ALTER ROLLBACK SEGMENT 命令 如果是活动区,可能无法缩小到请求的大小 设置回滚段脱机 回滚段脱机后即无法访问 如果事务使用回滚段,状态临时设置为PENDING OFFLINE 删除回滚段 在回滚段删除之前,必须处于脱机状态 数据库中的回滚段 DBA_ROLLBACK_SEGS 标识: SEGMENT_ID SEGMENT_NAME 位置: TABLESPACE_NAME 类型: OWNER (PUBLIC or SYS) 状态: STATUS (ONLINE or OFFLINE) 计划回滚段:数目 OLTP(联机事务处理) 很多小的回滚段 每四个事务一个回滚段 最多每个回滚段10个事务 Batch(批处理) 少量大型回滚段 每个事务一个回滚段 回滚段问题 事务空间不足 读一致性错误 堵塞会话 表空间脱机错误 事务空间不足 表空间中无空间 扩展数据文件 允许数据文件自动扩展 添加数据文件 段达到MAXEXTENTS 增加MAXEXTENTS 用更大的区大小创建段 读一致性错误 堵塞会话 表空间脱机错误 包含活动回滚段的表空间无法脱机: 1. 确定表空间中包含哪些回滚段 2. 把所有的回滚段脱机 3. 找到使用这些回滚段的活动事务 4. 找到会话ID和会话编号 5. 如果需要终止会话 6. 把表空间设置为脱机 OPTIMAL 参数指定回退段必须收缩到的以字节为单位的大小(如果可能)。 指定OPTIMAL 使回退段中空间的浪费减到最小。如果指定了OPTIMAL 参数,则回退段可以在导致增长的事务处理完成时释放空间 并非事务处理一完成就进行区的回收。回收区的进程仅当头从一个区移动到下一个区时才执行。当满足下面两个条件时对区进行回收 回退段的当前大小超过OPTIMAL 存在连续的非活动区 Oracle 服务器尝试回收回退段的大小直到它等于OPTIMAL, 但当要回收的下一个区正在使用时将不得不突然停止 Oracle 服务器总是回收最旧的非活动区因为它们最不可能用于读一致性 限制 回退段在创建时可以指定为PUBLIC 或PRIVATE (缺省值),且无法更改。 对于回退段,MINEXENTS 必须至少为两个。 无法为回退段指定PCTINCREASE, 它始终设置为0。 如果指定了OPTIMAL ,则它必须至少等于回退段的初始大小,该大小是MINEXTENTS 定义的区数所使用的空间。 原则 始终为回退段使用INITIAL = NEXT 以确保所有区的大小相同 设置OPTIMAL 值以最小化回退段区的分配和回收 避免将MAXEXTENTS 设置为UNLIMITED 否则可能由于程序错误导致回退段和可能的数据文件的不必要的扩展 始终将回退段放置在单独排它的表空间中以使争用和碎片减到最小 使回退段脱机 令回退段脱机: 以防止新的事务处理使用回退段 如果需要丢弃该回退段 语法 使用下列命令使回退段脱机 ALTER ROLLBACK SEGMENT rollback_segment OFFLINE; 如果该语句执行时存在正在使用该回退段的事务处理,则将回退段的状态设置为PENDING OFFLINE, 如同从动态性能视图V$ROLLSTAT 中所看到的那样所有现有事务处理一完成就令该段脱机。 若要获取有关数据库中的所有回退段的信息请查询DBA_ROLLBACK_SEGS 视图 SQL SELECT segment_name, tablespace_name, owner, status 2 F

您可能关注的文档

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档