zoukankan      html  css  js  c++  java
  • Oracle失败──例程失败

    Oracle Server = 例程 + DB

    例程 = 后台进程 + SGA

    例程失败是指与例程相关的后台进程或内存结构出现失败。

    例程失败主要有以下几种情况:

    • 电源断电导致Oracle Server 不可用。
    • 因为硬件失败导致Oracle Server 不可用,如CPU 失败、内存损坏。
    • 某个必需的后台进程出现失败。(DBWR、LGWR、PMON、SMON、CKPT)

    例程失败类似于执行SHUTDOWN ABORT 命令关闭DB,在解决了硬件和断电等问题后,DBA只需要执行STARTUP 命令启动例程和DB 就可以了,而不需要执行任何恢复命令。当执行STARTUP 命令启动例程并装载了DB之后,后台进程SMON 会自动执行例程恢复,最终使DB 的所有文件(数据文件、控制文件、重做日志)完全同步。

    后台进程SMON 按照以下步骤执行例程恢复:

    1. 确定不同步的物理文件。通过比较数据文件头部、控件文件和重做日志的当前SCN值,后台进程SMON 可以确定哪些文件处于不同步状态。
    2. REDO。在确定了不同步的文件之后,SMON 会重新应用那些在数据文件上未执行的事务操作,并且后台进程DBWN 会将已提交的数据写入数据文件,未提交的数据写入UNDO段。在应用了REDO 之后,所有联机数据文件都会具有一致的SCN 值。
    3. 在应用了REDO 之后,后台进程SMON 会打开DB。
    4. UNDO。在应用了REDO 之后,数据文件既包含了被提交的数据,也包含了未被提交的数据。在打开DB 之后,SMON 会自动使用UNDO 段取消那些未被提交的数据。从Oracle Database 8 版本开始,Oracle Server 使用“延时回退”机制降低例程恢复时间。
    E-MAIL:yiwuya@hotmail.com
    MSN:yiwuya@hotmail.com
    QQ:304899972
    纺织软件
  • 相关阅读:
    How to print GETDATE() in SQL Server with milliseconds in time?
    StarLink卫星网络如何工作
    Chinasat16
    天线增益计算
    Schemachine
    源代码之整洁代码
    关于进程内缓存与分布式缓存
    IOT物联网时代测试演化
    互联网大促运维实践案例
    Kubernetes应用场景
  • 原文地址:https://www.cnblogs.com/yiwuya/p/1275507.html
Copyright © 2011-2022 走看看