用户抱怨SQL Server数据库运行非常慢。通过默认跟踪的这个查询,可以识别出log file autogrow活动导致的长时间运行。为什么如此之慢?

1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT te.name AS [trace_events_name] ,
t.DatabaseName ,
t.NTDomainName ,
t.ApplicationName ,
t.LoginName ,
t.Duration ,
t.StartTime ,
t.EndTime
FROM sys.fn_trace_gettable(CONVERT(VARCHAR(150), ( SELECT TOP 1
f.value FROM sys.fn_trace_getinfo(NULL) f WHERE f.property = 2 )), DEFAULT) T
JOIN sys.trace_events TE ON T.EventClass = TE.trace_event_id
WHERE te.trace_event_id = 93
AND t.StartTime BETWEEN '2012-04-17 13:00:00.000' AND '2012-04-17 15:00:00.000'

有些因素导致log file autogrow性能较差,例如:

1) 如果一个大型事务导致日志增长,SQL事务需要等待日志自动增长完成。该事务需要写入SQL Server事务日志文件。通常,我们会在SQL错误日志中看到一条信息。

2) 自动增长和自动收缩可能在SQL Server数据库上导致冲突。

3) 衡量在SQL事务日志文件上的物理碎片。

4) 文件立刻初始化(Instant file initialization)只与数据文件有关。将不会有利日志文件增长。

5) 最小化事务的大小。正常提交有助于维护更小的日志文件。

6) 跟进存储性能。收集Perfmon性能计数器信息,例如:Logical Write Bytes/sec和Logical Read Bytes/sec。

本文转自UltraSQL51CTO博客,原文链接:http://blog.51cto.com/ultrasql/1582298 ,如需转载请自行联系原作者

SQL Server 默认跟踪应用4 -- 检测日志文件自动增长相关推荐

  1. SQL Server 默认跟踪(Default Trace)

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) 查看默认跟踪信息(Default Tr ...

  2. SQL Server 默认跟踪 -- 捕获事件详解

    SQL Server 默认跟踪 -- 捕获事件详解 哪些具体事件默认跟踪文件能够捕获到? --returns full list of events SELECT * FROM sys.trace_e ...

  3. SQL Server使用代码创建数据库主文件日志文件

    创建主文件(每个数据库必须有一个主文件) CREATE DATABASE 数据库名称 ON PRIMARY(     NAME = '数据库主文件名称',     FILENAME = '文件存放位置 ...

  4. SQL Server 默认跟踪报表

    全文转载自 http://sqlconcept.com/tools/default-trace-audit-documentation-and-faq/ Default Trace Audit doc ...

  5. SQL Server 2012笔记分享-29:日志文件的工作方式

    预写日志 (WAL) SQL Server 使用预写日志 (WAL),此日志确保在将关联的日志记录写入磁盘后再将数据修改写入磁盘.这维护了事务的 ACID 属性. SQL Server 维护当必须检索 ...

  6. fn_dblog_如何使用fn_dblog和fn_dump_dblog直接在SQL Server数据库中连续读取事务日志文件数据

    fn_dblog 大纲 (Outline) In this article, we'll discuss how to read SQL Server transaction logs. This a ...

  7. SQL Server 2008 R2:快速清除日志文件的方法

    本例,快速清理"students"数据库的日志,清理后日志文件不足1M. USE [master] GO ALTER DATABASE students SET RECOVERY ...

  8. 使用SQL Server更改跟踪创建SQL Server审核

    This continuation of our SQL Server auditing series is on SQL Server Change Tracking and will cover ...

  9. SQL Server 默认和命名实例连接问题-TCP/IP 端口

    TCP/IP的基本工作原理这里就不浪费口水了.现在这网络年代,谁不知道TCP/IP啊.不要跟我抬杠说你偏就没听说过TCP/IP阿,真是这样那你得自己去补补课了. TCP/IP协议有两个基本的东西,一个 ...

  10. SQL Server中灾难时备份结尾日志(Tail of log)的两种方法

    简介 在数据库数据文件因各种原因发生损坏时,如果日志文件没有损坏.可以通过备份结尾日志(Tail of log)使得数据库可以恢复到灾难发生时的状态. 例如: 上图中.在DB_1中做了完整备份,在Lo ...

最新文章

  1. mac nginx 非brew安装_Mac下使用Home Brew安装Nginx
  2. Anbox 和 LXC 代码规模
  3. CSS实现背景透明而背景上的文字不透明
  4. 计算机组装与维修考试试卷,计算机组装与维修期末考试试卷..doc
  5. db2如何锁定一张表_DB2数据库为单个会话锁定的技巧
  6. java基础知识梳理_java基础知识点梳理3
  7. 爬虫python能做什么-总算发现python爬虫能够干什么
  8. 计算机学硕考研复试编程能力,苏州大学计算机学硕专业考研复试真题
  9. NAT地址转换的三种实现方式
  10. HTML之一天学会html(常用标签+网页架构)
  11. 「ZJOI2019」麻将
  12. 如何使用jmeter录制脚本
  13. ps景观平面图转鸟瞰图_小清新ps做景观鸟瞰图
  14. Ubuntu安装腾讯软件
  15. Canvas绘制飞机飞行
  16. 【FineBI】权限控制之动态维度/动态列
  17. 为什么计算机网络使用数字信号,计算机网络数字电子技术的作用
  18. 服务器cadence比虚拟机慢,Cadence版本选择浅见
  19. 雅思口语练习必备100个经典句子
  20. 设计模式(二)(C++)

热门文章

  1. F5 cookie值与IP地址(二):将IP地址转换成F5 cookie值
  2. 【PHP面向对象(OOP)编程入门教程】20.PHP5接口技术(interface)
  3. pyramid setup(修改版)
  4. windows 2003与windows 2008区别之AD DS篇
  5. [解决方案]SQLSTATE[HY000]: General error: 2006 MySQL server has gone away
  6. Android 中文 API (24) —— MultiAutoCompleteTextView.CommaTokenizer
  7. mysql pt_mysql管理工具之pt
  8. DOCKER基础技术:LINUX NAMESPACE(上)
  9. Linux链表list_head/hlist_head/hlist_nulls_head的并发性
  10. 简析Windows Linux的内核映射