考试网 >> IT认证 >> Oracle >> Oracle指导 >> Oracle数据库-UNDO数据

Oracle数据库-UNDO数据

发布时间:2006-06-28 09:52     点击:
分页:[1] 2  下一页

  UNDO数据

  

  一、管理UNDO数据的两种方式

  

  自动(9i新特性)和手动(在9i之前唯一的管理方式)。

  

  二、Undo段

  

  在一个进程修改数据库过程中存放旧的数据,包括数据没有修改之前的位置和值。Undo段的头包含了一个事物处理表,表中存放了目前使用undo段事物处理的信息。一个系列的事物处理只使用一个undo段存放undo数据。多个并行事物处理可以同时写入一个undo段。

  

  三、Undo段的作用

  

  1、事务处理rollback

  

  当一个事物处理修改了表中的一行,旧数据的映像就会存放在undo段中。如果事物处理rollback,Oracle Server就使用undo段中值再写回修改行。

  

  2、事物处理恢复

  

  当一个例程失败而还有一些事物处理没有完成,Oracle Server在数据库再次打开的时候就需要将所有没有提交的修改全部undo。这种rollback是事物处理恢复的一部分。由于undo段的修改也会被redo日志文件保护,因此恢复是能够进行的。

  

  3、读取的一致性

  

  当一个事物处理正在运行,其他的用户是不能看到任何这个事物处理没有提交的修改的。另外,在一个查询执行期间的数据改变是不应该显示在这个查询结果当中的。在undo段中的旧的数据(Undo数据)也为用户特定查询提供一个一致的映像。

  

  四、读取的一致性

  

  1、即使其他的事物处理修改了数据,Oracle Server也会保证一个查询看到的数据是一致的。当Oracle Server开始执行一个select查询,它将记录目前系统更改编号(SCN)并且确保这个SCN以后的任何数据修改将不会影响到这个查询结果。比如一个运行时间非常长的查询语句在执行过程中有发生了几个修改,如果一行数据在查询声明以前的修改没有提交,Oracle Server将从undo段中提取没有修改的以前的映像,并构建一个“读取一致”的行映像。

  

  2、事物处理读取一致性

  

  读取的一致性通常是指SQL查询语句。但是也可以通过在紧跟在事物处理声明后使用一下命令来使事物处理的读取也是一致的:
分页:[1] 2  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有