科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道MS SQL Server的事务日志简介一览(2)

MS SQL Server的事务日志简介一览(2)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

交易日志,或称事务日志(Transaction logs)是数据库结构中非常重要但又经常被忽略的部分。由于它并不像数据库中的schema那样活跃,因此很少有人关注交易日志。

作者:枫 来源:csdn 2007年9月10日

关键字: 事务日志 SQL Server SQL Server 各版本 数据库

  • 评论
  • 分享微博
  • 分享邮件

性能优化

交易日志对数据库有重要作用,同时它对系统的整体性能也有一定影响。通过几个选项,我们可以对交易日志的性能进行优化。由于交易日志是一个连续的磁盘写入过程,在这当中不会发生读取动作。因此将日志文件放在一个独立的磁盘,对优化性能有一定作用。

另一项优化措施与日志文件的体积有关。我们可以设置日志文件的体积不超过硬盘空间的百分之几,或者确定它的大小。如果将其设置的过大会浪费磁盘空间,而如果设置的过小则会强制记录文件不断尝试扩展,导致数据库性能下降。

事务日志文件Transaction Log File是用来记录数据库更新情况的文件,扩展名为ldf。

在 SQL Server 7.0 和 SQL Server 2000 中,如果设置了自动增长功能,事务日志文件将会自动扩展。

一般情况下,在能够容纳两次事务日志截断之间发生的最大数量的事务时,事务日志的大小是稳定的,事务日志截断由检查点或者事务日志备份触发。

然而,在某些情况下,事务日志可能会变得非常大,以致用尽空间或变满。通常,在事务日志文件占尽可用磁盘空间且不能再扩展时,您将收到如下错误消息:

Error:9002, Severity:17, State:2

The log file for database ’%.*ls’ is full.

除了出现此错误消息之外,SQL Server 还可能因为缺少事务日志扩展空间而将数据库标记为 SUSPECT。有关如何从此情形中恢复的其他信息,请参见 SQL Server 联机帮助中的“磁盘空间不足”主题。

另外,事务日志扩展可能导致下列情形:

· 非常大的事务日志文件。

· 事务可能会失败并可能开始回滚。

· 事务可能会用很长时间才能完成。

· 可能发生性能问题。

· 可能发生阻塞现象。

原因

事务日志扩展可能由于以下原因或情形而发生:

· 未提交的事务

· 非常大的事务

· 操作:DBCC DBREINDEX 和 CREATE INDEX

· 在从事务日志备份还原时

· 客户端应用程序不处理所有结果

· 查询在事务日志完成扩展之前超时,您收到假的“Log Full”错误消息

· 未复制的事务

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章