重做日志(Redo Log)文件:
重做日志文件会记录对于数据库的任何操作,如利用DML语句或者DDL语句对数据进行更改,或者数据库管理员对数据库结构进行更改,都会在重做日志中进行记录。
当数据被意外的删除或者修改,我们可以利用重做日志文件进行恢复; 当出现例程失败或者介质失败的情况下,也可以利用日志文件实现例程恢复或者介质恢复。所以说,我们若能够管理好重做日志文件的话,对于保障数据库数据的安全是非常重要的。
重做日志缓冲区:
由于Oracle的每一项操作都会记录重做日志,因此很有必要为重做日志专门设立一个缓冲区,即重做日志缓冲区。重做日志缓冲区的大小由初始化参数LOG_BUFFER指定。
重做日志缓冲区由很多重做记录(Redo Record)组成。每条重做记录记载了被修改数据块的位置以及变化后的数据。
下面看一下,当执行"UPDATE emp SET sal=2000 WHERE empno=7788;"这条语句时的过程:
1.Oracle将emp表中empno=7788的记录的sal的值的变化记录到重做日志缓冲区中
2.将旧值1000记录到UNDO段所对应的缓冲区中
3.将新值2000存放到EMP段所对应的缓冲区中
4.将重做日志缓冲区的内容写入重做日志文件
5.Commit
阅读(2177) | 评论(0) | 转发(0) |