如何理解redo和undo的作用

redo

重做日志(redo)包含所有数据产生的历史改变记录,是oracle在线或归档重做日志文件中记录的信息,一旦掉电或其他意外丢失数据,可以利用这些数据来重做事务,例如已经出现了丢失数据的情况,那么就可以利用redo来重放事务,通常用于实例恢复和介质恢复、日志挖掘和流(分析redo,捕获实时数据,传到远程数据库,并应用于远程数据库)。Redo中保存的内容是改变向量,改变数据块的大小,是对数据块的覆盖。

undo

undo是oracle在undo段中记录的信息,用于取消或回滚事务,例如对数据进行修改时,数据库会产生undo信息,若数据出现丢失,可采用rollback请求回滚,可以利用这些undo信息将数据放回到修改前的样子。UNDO的作用包括了数据的回滚、一致性读、表的闪回以及失败会话的恢复。它的流程:当update一个数据块时,在开始时需要从内存中找到这个数据块,在undo中放入数据块放之前的值old data在undosegment中,这时候就会产生undo,oracle就会对原始数据更新值,也会产生redo。

UNDO和REDO的区别

  • Undo里是怎么样去撤销一个改变;redo里是怎么养去重做一个改变;

  • Undo用于回滚、一致性读(readconsistency)和闪回(flashback);redo用于数据库前滚(rolling forward)、恢复和数据的改变;

  • Undo放在undo表空间中;redo是放在redo日志文件中;

  • Undo是来保护一致性读;redo来保证数据不丢失。

最新文章

  1. [SQLServer大对象]——FileTable从文件系统迁移文件
  2. Codeforces Round #375 (Div. 2)
  3. JNDI 配置:JBoss + MySQL
  4. ZOJ 3757 Alice and Bob and Cue Sports(模拟)
  5. linq 中的分组查询
  6. java学习之关键字
  7. [Protractor] Protractor Interactive with elementor
  8. [转]Windows平台下LispBox环境搭建
  9. ZeroClipBoard 复制粘贴插件
  10. hdu 4893 Wow! Such Sequence!
  11. 【python基础】之list列表
  12. Java高级篇(一)——线程
  13. max of 直线划平面
  14. MTSC2019第五届中国移动互联网测试开发大会北京站震撼来袭!
  15. InheritParasitic.js
  16. 【原】移动web资源整理(安卓、ios移动端兼容性问题归整)
  17. ubuntu16安装使用chrome
  18. JavaScript数据结构-17.图结构
  19. 在node中使用jwt签发与验证token
  20. 基于Node的Web聊天室

热门文章

  1. Jsp动态生成表格
  2. 网页转PDF作为邮件附件
  3. The first step in solving any problem is recognizing there is one.
  4. ptxas fatal : Unresolved extern function Error 255
  5. 从wireshark数据中分析rtmp协议,并提取出H264视频流
  6. windows下安装pm2
  7. easyui常用控件及参数说明
  8. 64位Windows系统下32位应用程序连接MySql
  9. Eclipse中添加MyEclipse插件
  10. 修改deeplabv3的test的输出的label颜色