您的位置:首页 > 其它

REDO LOG 与 UNDO LOG的区别

2009-12-20 23:02 447 查看
重做日记:每当有操作施行前,将数据真个更动时,早先相干操作写下重做日记。这么当断电,或许一些不测,罗致后续任务没法完成时,系统回复后,可以持续完成这些更动

撤销日记:应一些更动在实施一半时,发生意外,而没法完成,则可以依据取消日记回复到改动先期的壮态.

当用户在Buffer Cache中批改数据时,Oracle并不会立马将批改数据写出到数据文件上,由于那样做效率能很低,到目前为止,计算机系统中最忙碌的一部分是磁盘的 I/O操作,Oracle这么干的目的是为了减小IO的次数,应批改过的数据达到一定数量以后,可以进展高效率地批量写出。
大多数守旧数据库(当然包括Oracle)在处置数据批改时都遵从no-force-at-commit计策。来讲,在交付时并不挟制写。那么为了军令状数据在数据库发作故障时(比如断电)可以回复,Oracle引来了Redo机制,经过接续的、顺序的日记条目的写出将随机的、疏散的数据块的写出延迟。这个推迟使答数据的写出可以取得批量效应的性能提拔。
同Redo Log Buffer相仿,Redo Log File也是循环应用的,Oracle容许施用至少两个日记组。缺省情况下,数据库创造时会建立3个日记组。
SQL> select group#,members,status from v$log;
GROUP# MEMBERS STATUS
———- ———- —————-
一 一 INACTIVE
二 一 CURRENT
三 一 INACTIVE
应一个日记资料写满以后,能切换到除此而外一个日记资料,这个切换历程号称Log Switch。Log Switch能触发一个检查点,敦促DBWR历程将写满的日记资料保护的变化数据写回来数据库。在检查点完成事前,日记资料是不能够被重用的
本文来源:
我的异常网
Java Exception
Dotnet Exception
Oracle Exception

970 - ORA-01501

971 - 存储过程批量更新

972 - group by

973 - ORA-01034

974 - sql参数

975 - DBLINK的session无法关闭

976 - 表前缀

977 - oracle导出txt文件

978 - oracle规范

979 - java.lang.AbstractMethodError

980 - java.net.BindException

981 - sun.io.MalformedInputException

982 - unknown protocol: d

983 - java.lang.VerifyError

984 - ORA-12154

985 - java.lang.outmemoryerror

986 - resin的getNodeValue()抛出异常

987 - java.sql.SQLException: No suitable driver

988 - javax.microedition.io.ConnectionNotFoundException

989 - java.io.IOException
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: