zoukankan      html  css  js  c++  java
  • 数据库的Instance/Crash Recovery

    crash recovery是指单实例数据库发生了failure、或者rac数据库中的所有实例都发生了failure后进行的recovery。rac数据库crash后,rac中第一个重启启动的instance负责进行crash recovery。
    instance recovery是指rac环境中,剩下存活的instance的smon进程对已经发生failure的instance进行的recovery。实例恢复时可以查看视图gv$instance_recovery进行监控

    Instance/Crash Recovery二者都不需要管理员人工参与。

    Instance/Crash Recovery的目标是还原instance中止时cache中已经修改的数据块,并将仍处于open状态的redo thread关闭。Instance/Crash Recovery只会用到在线联机日志文件和当前在线的数据文件。

    Instance/Crash Recovery包含两个阶段:前滚和回滚。前滚会将在线连接日志文件中已提交、未提交的事务记录应用到在线的数据文件上;回滚是将未提交的事务所做的修改变到最初的状态。

    Instance/Crash Recovery有以下共同的特点:
    -对当前在线数据文件重做修改操作
    -只需要在线连接日志文件,不需要归档日志
    -需要的时间与发生failure的instance的个数、redo的产生量(自上一个checkpoint后)、用户的配置(如redo日志的大小、检查点频率、是否开启并行等)等有关

    Instance Recovery的过程:
    1.执行实例恢复时,oracle会识别出上一次发生的检查点。
    2.从上一次检查点开始,应用那些以及写入在线联机日志文件、但是还没有写入数据文件的操作。在前滚阶段会使用到RBS和用户数据
    3.前滚结束,数据库被打开、用户可以连接到数据库。但是,未提交的事务会锁住有些数据
    4.执行回滚操作
    5.恢复过程结束

  • 相关阅读:
    格式化字符串漏洞利用实战之 0ctf-easyprintf
    java多线程机制中的Thread和Runnable()区别
    Eclipse中部署Android开发环境插件安装问题方案
    java接口实现
    Visual Studio UML
    java子类继承关系
    Visual Studio UML类图
    java方法重载和重写
    javaSocket笔记
    python网络爬虫笔记(九)
  • 原文地址:https://www.cnblogs.com/abclife/p/5889784.html
Copyright © 2011-2022 走看看