• Redo和Undo 杂七杂八的东西


    当发生数据改变的时候,SGA中对应的DBblock,IDXblock和UNDOblock都被纪录在Redo中。保
    留undo的作用:在crash recovery中,系统先roll forward所有的操作,然后使用undo信息
    roll back没有提交的操作。

    对temporary table的DML操作,不会产生直接redo,但是会产生undo(undo会产生redo).

    在正常的操作中,只有对redo log file的写操作(会发生log file
    sync事件)。读仅发生在恢复的时候。

    当commit的时候,db buffer不会写入db file,实际发生的动作是:LGWR把scn和redo
    buffer中相关的剩余信息写入redo file,然后释放lock

    redolog切换时发生checkpoint,目的是把被该redo保护的数据写入到数据文件中。dbw完成
    脏数 据的写入后,crash recovery就不再需要该redo log file。如果dbw
    速度慢,就可能发生checkpoint not completed事件,表示该redo log file还不能被重用

    DML操作中,产生undo信息的多少,一般如下 insert < update < delete 。
    相同的操作,如果涉及到有index的字段,产生的undo信息大幅度增加

    作者:wait4friend
    Weibo:@wait4friend
    Twitter:@wait4friend
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    vue中点击输入框弹出事件
    shiro
    Java转Kotlin
    RxJava2详细攻略(四)
    RxJava2详细攻略(三)
    RxJava2详细攻略(二)
    RxJava2详细攻略(一)
    DataBinding使用介绍
    类集框架
    使用CrashHandler获取应用crash信息
  • 原文地址:https://www.cnblogs.com/wait4friend/p/2334736.html
Copyright © 2020-2023  润新知