您的位置:首页 > 其它

学习散记5 --事务日志

2010-07-20 14:40 323 查看
学习散记 --事务日志
PS:MSDN摘入
事务日志用于确保数据库的数据完整性以及用于数据恢复。

事务日志逻辑体系结构:
SQL Server 事务日志按逻辑运行,就好像事务日志是一串日志记录一样。

事务日志记录:
1.每条日志记录由一个日志序列号 (LSN) 标识。每条新日志记录均写入日志的逻辑结尾处,并使用一个比前面记录的 LSN 更高的 LSN。

2.每条日志记录都包含其所属事务的 ID。对于每个事务,与事务相关联的所有日志记录通过向后指针挨个链接在一个链中。

3.数据修改的日志记录分成:记录所执行的逻辑操作,或者记录已修改数据的前像和后像。(前像是执行操作前的数据副本;后像是执行操作后的数据副本)

4.还有很多类型的操作记录在事务日志中:
每个事务的开始和结束。
每次数据修改(插入、更新或删除)。这包括系统存储过程或数据定义语言 (DDL) 语句对包括系统表在内的任何表所做的更改。
每次分配或释放区和页。
创建或删除表或索引。
回滚操作.

事务日志物理体系结构:
a.数据库中的事务日志映射在一个或多个物理文件上。日志记录序列被有效地存储在实现事务日志的物理文件集中。

b.数据库引擎在内部将每一物理日志文件分成多个虚拟日志文件。虚拟日志文件没有固定大小,且物理日志文件所包含的虚拟日志文件数不固定。

c.只有当日志文件使用较小的 size 和 growth_increment 值定义时,虚拟日志文件才会影响系统性能。
建议您为日志文件分配一个接近于最终所需大小的 size 值,并且还要分配一个相对较大的 growth_increment 值。

d.事务日志是一种回绕的文件。
这里简单来说就是新日志记录不断添加到逻辑日志尾部,当逻辑日志的末端到达物理日志文件的末端时,新的日志记录将回绕到物理日志文件的始端。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/feixianxxx/archive/2010/01/25/5253949.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: