SQLSERVER性能监控级别步骤

下面先用一幅图描述一下有哪些步骤和顺序

1、识别瓶颈

识别瓶颈的原因包括多个方面,例如,资源不足,需要添加或升级硬件;

工作负荷在同类资源之间分布不均匀,例如,一个磁盘被独占;资源发生故障;资源配置不正确等

可能存在瓶颈以及对系统的影响

可能的瓶颈方面

对服务器的影响

内存使用

分配内存不足或SQLSERVER使用内存不足导致性能下降

CPU使用率

长期的高CPU使用率可能表明TSQL查询需要优化或CPU需要升级

磁盘输入/输出I/O

可以优化TSQL查询以减少不必要的I/O(例如:使用索引)

用户连接

可能有太多用户同时访问服务器,从而导致性能下降

阻塞锁

应用程序设计不合理阻塞妨碍并发,带来更长的响应时间

2、监控级别

SQLSERVER提供了多种性能监控工具,可以使用他们来仔细检查性能的不同方面,以不同的细致程度帮助用户确定故障区域,

逐级逐步找到影响性能的最大因素

(1)系统级监控 --应当首先查看系统级信息,确认系统资源(硬件)、网络体系结构对性能的影响,可以使用Windows应用程序日志,

Windows系统监视器进行监控

(2)数据库级监控 --在进行系统监控后,还需要监控数据库活动。使用SSMS中的活动监视器、SQLSERVER事件探查器和系统存储过程监控锁、

用户连接数目

(3)客户端应用程序监控 --最后,仔细检查和评估特定的查询的性能。使用SQL profiler 和系统视图检查对索引的使用情况、

查询所需CPU时间和磁盘I/O操作

3、建立性能基线

当确定了性能监控中所涉及的资源、负载和目标后,开始进行监控,并建立性能基线与当前服务器性能进行比较。

性能基线是一个保证系统正常操作性能范围值,达到或超过这个范围,系统性能可能会显著下降。

应该对接近或超过性能基线的数字做进一步调查找出原因监控的周期是一段时间,而不是一两天。

其中应该包括数据库活动的峰值时间和非峰值时间,数据查询和批处理命令的响应时间、数据库备份和还原所需时间

建立服务器性能基线后,将基线统计与当前服务器性能进行比较。对高于或远低于基线的数字需要做进一步调查。

他们可能表明有需要调整或重新配置的区域。例如,执行一组查询的时间增加,检查这些查询以确定能否重新编写他们,

或者是否添加统计信息或索引

4、确认用户活动

监视用户活动有助于确定趋势,例如,用户运行的事务类型,运行的低效即席查询的数量和占用资源最多的事务类型。

若要收集有关用户的统计信息,请使用SQLSERVER PROFILER 或系统监视器SSMS活动监视器用于对SQLSERVER进行即席监视,

从而确定用户在系统中的活动

5、隔离性能问题

通常同时使用多个SQLSERVER或Windows工具比一次只用一个工具隔离数据库性能问题更有效。

例如,图形执行计划功能(也称为“显示计划”)可以迅速识别单个查询中的死锁。

然而,如果同时使用SQLSERVER和Windows的监视功能,将更容易识别某些其他性能问题

通过对这些工具的灵活运用进行逐个性能问题的排查,而不是同时开启SQL PROFILER 和Windows性能监视器

通过工具能够监控与应用程序有关的问题包括:

(1)SQLSERVER存储过程或用户提交的TSQL语句

(2)用户活动(如阻塞或死锁)

(3)硬件活动(如磁盘使用)

(4)应用程序开发错误

(5)硬件错误(如磁盘错误,网络错误)

(6)由于数据库设计不正确导致过多阻塞

---------------------------------------------------华丽的分割线-------------------------------------------------------

Windows性能监视器:perfmon.exe

SQLSERVER PROFILER

SSMS

如有不对的地方,欢迎大家拍砖o(∩_∩)o

SQLSERVER性能监控级别步骤的更多相关文章

  1. 对SQLSERVER进行性能监控

    对SQLSERVER进行性能监控 在上一篇文章<SQLSERVER性能监控级别步骤>里说到性能监控的步骤中有一步涉及到建立性能基线,但是没有说到有哪些计数器 可以用来进行监控的,这篇文章结 ...

  2. SQLServer性能优化之---数据库级日记监控

    上节回顾:https://www.cnblogs.com/dotnetcrazy/p/11029323.html 4.6.6.SQLServer监控 脚本示意:https://github.com/l ...

  3. 第四章——SQLServer2008-2012资源及性能监控(1)

    原文:第四章--SQLServer2008-2012资源及性能监控(1) 性能优化的第一步是发现问题,而发现问题通常又有两类:突发问题的侦测和常规问题的侦测,对于常规问题的侦测,通常需要有一个长效的性 ...

  4. SQL Server添加MDW性能监控报表(转载)

    10.2 Data Collector与MDW Data Collection功能是SQL SERVER 2005版本提供的数据库监控报表的功能,通过定时地对数据库的语句运行情况,服务器各种资源的监控 ...

  5. 第四章——SQLServer2008-2012资源及性能监控(3)

    原文:第四章--SQLServer2008-2012资源及性能监控(3) 本文为本系列最后一章,监控内存使用.监控服务器的内存是非常重要的事情,有很多情况会引起内存消耗.所以要经常性地做检查. 本文将 ...

  6. 第四章——SQLServer2008-2012资源及性能监控(2) .

    原文:第四章--SQLServer2008-2012资源及性能监控(2) . 本文接着上文继续,讲述如何监控CPU的使用情况 前言: CPU是服务器中最重要的资源.在数据库服务器中,CPU的使用情况应 ...

  7. 性能调优之Java系统级性能监控及优化

    性能调优之Java系统级性能监控及优化   对于性能调优而言,通常我们需要经过以下三个步骤:1,性能监控:2,性能剖析:3,性能调优 性能调优:通过分析影响Application性能问题根源,进行优化 ...

  8. Go 程序的性能监控与分析 pprof

    你有没有考虑过,你的goroutines是如何被go的runtime系统调度的?是否尝试理解过为什么在程序中增加了并发,但并没有给它带来更好的性能?go执行跟踪程序可以帮助回答这些疑问,还有其他和其有 ...

  9. 【性能监控-Perfmon工具】Perfmon工具使用教程

    一.Perfmon工具简介 Perfmon是一款Windows自带的性能监控工具,提供了图表化的系统性能实时监视器.性能日志和警报管理.通过添加性能计数器可以实现对CPU.内存.网络.磁盘.进程等多类 ...

随机推荐

  1. Microsoft source-code annotation language (SAL) 相关

    More info see: https://msdn.microsoft.com/en-us/library/hh916383.aspx Simply stated, SAL is an inexp ...

  2. java中常用数据类型转换器

    /** * 把String转换成long * * @param src 要转换的String * @param def 转换失败时返回此值 * @return 转换好的long */ public s ...

  3. notepad++ 正则表达式

    body { font-family: Bitstream Vera Sans Mono; font-size: 11pt; line-height: 1.5; } html, body { colo ...

  4. SVG 使用

    SVG即Scalable Vector Graphics可缩放矢量图形,使用XML格式定义图形, 主要优势在于可缩放的同时不会影响图片的质量. SVG 在html 中常用的方法 1.使用<img ...

  5. angularJS学习之旅(1)

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  6. 搭建本地MAVEN NEXUS 服务

    下载 http://120.192.76.70/cache/www.sonatype.org/downloads/nexus-latest-bundle.zip?ich_args=232fba36ed ...

  7. Delphi 7学习开发控件

    我们知道使用Delphi快速开发,很大的一方面就是其强大的VCL控件,另外丰富的第三方控件也使得Delphi程序员更加快速的开发出所需要的程序.在此不特别介绍一些概念,只记录自己学习开发控件的步骤.假 ...

  8. [2015hdu多校联赛补题]hdu5302 Connect the Graph

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5302 题意:给你一个无向图,它的边要么是黑色要么是白色,且图上的每个点最多与两个黑边两个白边相连.现在 ...

  9. 定位一组对象-checkbox 、radiobutton

    webdriver 可以很方便的使用find_element 方法来定位某个特定的对象,不过有时候我们却需要定位一组对象,WebElement 接口同样提供了定位一组元素的方法find_element ...

  10. ubuntu下安装迅雷

    ----------------------------------2016-03-28新增适用于ubuntu16.04系列的安装包---------------------------------- ...