--没有实操过,有点复杂,先写上以后有用到再深入研究

统计与诊断数据是任何 SQL故障修复工作的关键所在。

如果没有掌握这些数据,就无法确定数据性能问题的根源。数据表的瓶颈可能并不是由索引问题造成的;而可能是数据库文件的保存方式。而这正是Pssdiag和Sqldiag管理器发挥作用的地方。  

 微软在SQL Server中捆绑了一个命令行工具Sqldiag,它可以从SQL Server实例及其所在Windows系统收集信息。它可以采集大量的数据:SQL Server Profiler的堵塞跟踪和数据、Windows性能和事件日志和SQL Server配置信息。   

Sqldiag的最大缺点是交互性不佳。它是一个命令行工具,使用一个必须手工编辑的XML配置文件。虽然可以为不同统计信息创建多个XML文件,但是这仍然不是使用这个工具最简单的方法。特别是在将Sqldiag作为服务运行的时,它可以非常快捷地实现一站式后台数据收集,但是同样需要大量的手动配置。如果发现需要不停地调整数据采集参数,那么应该多次创建和执行Sqldiag,而非一次。  

 

Pssdiagand SqldiagManager是一个开源项目,它为Sqldiag提供了一个图形化界面。这不仅仅是一个显示界面:它可以简化Sqldiag模板配置,支持对程序与相关文件进行打包,从而可以在多个服务器上方便地运行。   

Pssdiag和Sqldiag管理器(P&SM)支持从7.0开始所有版本的SQL Server,包括2000、2005和2008(Windows Server 2012的支持也在规划中)。此外,它支持所有SQL Server处理器平台(x86/x64和Itanium),因此它支持所有CPU或软件版本。注意,如果使用SQL Server 2000或更早的版本,那么必须单独下载一些工具,因为较早版本的SQL Server不包含这些文件。   

  P&SM的工作原理是对一个程序包进行编译——即一个包含自定义数据采集参数的CAB文件。当运行P&SM时,指定SQL Server实例名称(默认是“*”,表示当前主机的所有实例),选择整个主机与SQL Server实例本身的性能指标、日志事件和诊断数据,就可以编译一个程序包。这些参数都会编译到一个CAB文件中,然后就可以在目标主机上运行和提取数据。  

 在默认情况下,最常用和最实用的诊断已经预先选中,但是由于所检查的问题各不相同,您可以缩小编译范围。建议使用跟踪过滤等文件缩小数据捕捉范围,但是要注意,在特定CPU开销情况下,它的实现方式可能会减少I/O和磁盘空间使用——实际上,这里存在一定的折衷。它们会给出一些可以避免问题发生的具体推荐配置;例如,过滤整形字段,保留文本字段,不捕捉高频事件,因为这些数据在开始时用处并不大。  

 关于P&SM,最重要的一点是支持创建自定义数据采集方法。如果采集的数据并非来自P&SM界面所展示的数据源,那么这是非常实用的功能。您可以使用自定义采集器运行T-SQL命令、批处理脚本、PowerShell命令或第三方命令行工具。PS&M产生的文件可以进行手工分析,或者加载到同一个公司开发的另一个工具(SQL Nexus)。  

 对于P&SM创建的程序包,还有其他一些问题需要注意。首先,在运行跟踪程序包时,它必须与SQL Server实例位于同一个主机上,并且必须进行监控。这是因为,您需要SQL Server实例本身进行一些必要的数据捕捉工作。捕捉这些统计信息的工具不可能转移到其他主机或实例上。只有在无法捕捉SQL Server分析跟踪数据时,才需要在另一台主机上跟踪程序包,但是开发商指出,这样做的好处并不大,所以最好在目标系统上运行跟踪,这样可以避免很多麻烦。   

同样,您可能会尝试使用网络设备的跟踪包,以简化跟踪工作。例如,可以将多个跟踪包保存在同一个共享磁盘的子文件夹下,然后在各个SQL Server实例上运行。同样,不推荐采用这种方法 。我认为,如果使用这种方法,在目标磁盘上进出的网络流量可能会对性能产生重大的负面影响,而且会影响跟踪的准确性。

TechTarget中国原创内容,原文链接: https://searchdatabase.techtarget.com.cn/7-20943/
© TechTarget中国:https://www.techtarget.com.cn

Pssdiag下载地址:https://github.com/Microsoft/DiagManager

参考文档:

sqldiag:联机丛书--sqldiag

参考:https://www.cnblogs.com/lyhabc/archive/2013/02/13/2911011.html

参考:https://blog.csdn.net/burgess_liu/article/details/20614571

【监控笔记】【1.4】Pssdiag和Sqldiag管理器的更多相关文章

  1. 【Python学习笔记】with语句与上下文管理器

    with语句 上下文管理器 contextlib模块 参考引用 with语句 with语句时在Python2.6中出现的新语句.在Python2.6以前,要正确的处理涉及到异常的资源管理时,需要使用t ...

  2. Openresty 学习笔记(四)lualocks包管理器安装使用

    Luarocks是一个Lua包管理器,基于Lua语言开发,提供一个命令行的方式来管理Lua包依赖.安装第三方Lua包等,社区比较流行的包管理器之一,另还有一个LuaDist,Luarocks的包数量比 ...

  3. [cocos2dx笔记010]用于UI的事件管理器

    cocos2dx有一个编辑器:cocostudio.眼下来说,已经是比較好用了.仅仅要载入导出的资源.就能够用上了.省去手动搭建面的麻烦. 可是.非常多须要事件的地方,操作比較麻烦,所以这里提供一个事 ...

  4. JMeter学习笔记(四) HTTP Cookies 管理器

    有些接口执行时,要求要先登录,此时就需要用到 HTTP Cookies 管理器.不过有些项目是使用的token,即添加HTTP信息头管理器,获取登录后的token,至于token与cookies的区别 ...

  5. GRUB启动管理器

    Linux学习笔记之 5 Linux GRUB启动管理器 1.GRUB简介 1.1grub与启动引导器     启动引导器是计算机启动过程中运行的第一个真正的软件,通常计算机启动时在通过BIOS自检后 ...

  6. 监控数据库运行 - MS SQL 日常维护管理常用脚本(二)

    查看数据库登录名信息 use mastergoSELECT name AS LoginName , dbname AS DefaultDB , createdate AS CreateDate, up ...

  7. python学习笔记4(对象/引用;多范式; 上下文管理器)

    ### Python的强大很大一部分原因在于,它提供有很多已经写好的,可以现成用的对象 21. 动态类型:对象/引用 对象和引用: 对象是储存在内存中的实体,对象名只是指向这一对象的引用(refere ...

  8. blfs(systemv版本)学习笔记-编译安装ligtdm显示管理器

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! ligtdm带有显示管理器和登录器,参照我的笔记安装xorg和i3后安装lightdm,就可以组成一个简易的桌面环境了 下面是l ...

  9. Windows10下Docker监控管理工具:Hyper-V管理器

    用Hyper-V管理器监控管理Docker,看到最新的MobyLinuxVM了. 今天启动Docker,出现内存不足的问题,调节内存配置即可.

随机推荐

  1. golang初识 和 变量,常量,iota

    目录 一.go语言与python 1. go语言 2. python 二.变量相关 1. go语言的基本语法 2. 标识符和关键字 3. 变量声明 (1)声明变量时未指定初始值 (2)声明变量时指定初 ...

  2. 阅读之spring框架

    资源表示:Resource Spring框架内部使用org.springframework.core.io.Resouce接口作为所有资源的抽象和访问接口. 它继承了 org.springframew ...

  3. 集合综合练习<一>

    1208421001,关羽,数学,93 1208421001,关羽,英语,88 1208421002,张飞,语文,82 1208421002,张飞,数学,83 1208421002,张飞,英语,89 ...

  4. Python---webserver3

    一.v07-添加路由功能 - 路由:能够理解请求并按照请求调用相应处理函数的模块 - 理解请求内容 - 能够调用或者指定相应业务处理模块 - 算法: - 按行读取传入报文 - 假如报文能用空格分割成三 ...

  5. 源于react里面constructor()和super()的使用

    es5里面没有继承的话 //构造函数 function People(name,age){ this.age = age; this.name = name } let p1 = new People ...

  6. Cassandra 数据一致性

    基本概念 一致性: 在分布式系统中的所有数据备份,在同一时刻是否同样的值 QUORUM: 是一个可以计算的数字,对数据一致性起重要作用 Node: 主要用来存储数据 Data Center: 数据中心 ...

  7. Codechef SEAARC Sereja and Arcs (分块、组合计数)

    我现在真的什么都不会了呢...... 题目链接: https://www.codechef.com/problems/SEAARC 好吧,这题其实考察的是枚举的功力-- 题目要求的是\(ABAB\)的 ...

  8. EasyUI combobox下拉框添加水平滚动条和垂直滚动条

    在EasyUI中combobox组件设置滚动条: 1.垂直滚动条:设置panelHeight属性,默认200,组件的数据过多滚动条自动出现,设置auto,则不出现滚动条. 2.水平滚动条:水平滚动条在 ...

  9. Java第一次学习总结

    学习内容: 1.java是本学期刚刚接触新的一种编程语言,与大一C语言在语法上有很多相同之处,不同的是在很多问题上,更加简练,更加易于理解. 例如:输出水仙花数,从C语言近五十行代码缩短近十几行,数据 ...

  10. @清晰掉 GDB调试器中的战斗机

    GDB 的命令很多,本文不会全部介绍,仅会介绍一些最常用的.在介绍之前,先介绍GDB中的一个非常有用的功能:补齐功能.它就如同Linux下SHELL中的命令补齐一样.当你输入一个命令的前几个字符,然后 ...