ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 二、重做日志的内容

二、重做日志的内容

原创 Linux操作系统 作者:wangcai008 时间:2010-02-23 16:47:48 0 删除 编辑
  1. 重做日志文件由重做记录填充;
  2. 一条重做记录,或者叫做重做条目,由一组变化矢量组成。每一组矢量描述了对单个数据库块所作的改变。例如:修改了员工表中薪水的值,那么就会产生一条重做记录,这条记录包含了描述该表数据段块变化的变化矢量,撤销段数据块以及撤销段的事务表;
  3. 重做条目记录的数据可以用于重建数据库的所有的改变,包括:撤销段。因此,重做日志也保护了回滚数据。当使用重做数据恢复数据库时,数据库会读取重做记录中的变化矢量,并将它们应用于相关的块;
  4. 重做记录以循环的方式缓存在SGA的重做日志缓冲区中,并由LGWR数据库后台进程写入到重做日志文件中。当事务被提交时,LGWR进程将重做日志从缓冲区写入日志文件中,并分配一个系统改变号(SCN),用于标识每一个被提交事务的重做记录。Only when all redo records associated with a given transaction are safely on disk in the online logs is the user process notified that the transaction has been committed.(这句话不知道怎么理解?);
  5. 在事务被提交之前,重做记录也会被写入重做日志文件。如果重做日志缓冲区满,或者另一个事务提交,LGWR会清空重做日志缓冲区,并将它们写入重做日志文件,即使有一些重做记录可能还没有被提交。如果必要,数据库不会回滚这些改变。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7902185/viewspace-627671/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 香蕉泥
请登录后发表评论 登录
全部评论

注册时间:2010-02-21

  • 博文量
    29
  • 访问量
    16168