码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-10-09 19:46:41      阅读:180      评论:0      收藏:0      [点我收藏+]

标签:

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

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

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

技术分享

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

标签:

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!