首页 > 其他 > 详细

什么是事务日志和虚拟日志文件(VLF)

时间:2015-10-09 19:44:12      阅读:303      评论:0      收藏:0      [点我收藏+]

事务日志是SQL Server的一个组成部分。每个数据库都有一个存储在独立于数据文件的日志文件。事务日志基本上记录了所有数据库修改。

例如,当用户发出一个插入操作(INSERT),它被会被记录在事务日志中。如果出现了错误,数据库可以回滚或还原事务之前的状态,并防止数据损坏。再比如,一个员工需要将2000条数据插入到数据库中,这时候突然间服务器断电。由于insert语句已经写入了事务日志并且知道了出现了错误,它将会回滚这次操作。如果没有这个功能,你可以想象我们需要数据筛选看到底成功插入了多少行,然后再更改其他行的代码执行其他操作。 更有甚者,如果是随机插入,你必须确定已经插入了什么数据,什么数据需要被排除在外。这可能需要非常非常长的时间。

日志条目是顺序的记录在文件中。整个日志文件会被分成很多小块称之为虚拟日志文件 。当一个虚拟日志文件被填满的时候,他会自动地去插入到下一个虚拟日志文件。当虚拟日志文件已经到整个日志文件的末尾的时候,他将会绕回到开始的虚拟日志文件并且覆盖掉之前的数据。操作如下图所示:

技术分享

什么是事务日志和虚拟日志文件(VLF)

原文:http://www.cnblogs.com/terrence/p/4864821.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!