----------------------------------------------------------------------
1. 由于用户请求更新,所以后台进程会从数据文件将对应的数据块复制到数据库缓冲区。
2. 执行UPDATE处理,被更新的新信息和更新前的旧信息(UNDO)都被写入日志缓冲区。
3. 更新前的旧讯息写入到数据库缓冲区内分配的回滚段。
4. 更新后的新讯息会覆盖数据库缓冲区内分配的数据块。
5. 接收到Commit要求,把日志缓冲区内的变更写入REDO日志文件 (除了Commit之外还有其他情况会进行往REDO日志文件的写入处理)(以后会进一步介绍)。
6. REDO日志文件满了之后,就会出现checkpoint。
7. 出现checkpoint的时候,LGWR会向DBWR发送消息。
8. DBWR收到[出现checkpoint]的通知,把数据库缓冲区内的未清空的数据块全部写回数据文件。
9. 写回数据文件的步骤结束之后,通知LGWR处理已经结束。
10. LGWR会把被写入日志缓冲区变更的REDO日志文件从1改为2(log switch)。
11. 如果以归档模式运行数据库,在纪录数据库变更后已满的REDO日志文件会被写出到归档文件。
转自http://kaya2007.itpub.net/post/27409/321157
[@more@]来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8178556/viewspace-1006123/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8178556/viewspace-1006123/