SqlServer性能优化 自定义动化性能收集(四)
配置数据收集器:
1.创建登录名并映射角色
2.配置管理数据仓库
3.创建收集组、收集项----MSDB数据存储 sp_syscollector_create...
4.自动配置相关job
具体步骤:


创建好之后的图:

配置数据收集:


刷新如下图所示:

创建的方法:
use msdb
go
declare @collectionsetid int --有返回值
exec sp_syscollector_create_collection_set @name='性能收集集合',
--收集的模式 缓冲模式
@collection_mode=0,
--无效的日期
@days_until_expiration=7,
--计划的时间
@schedule_name='CollectorSchedule_Every_15min',
@description='主要收集动态管理视图性能数据与计数器的相关性能数据',
--收集集的id
@collection_set_id =@collectionsetid output
declare @typeuid uniqueidentifier
declare @collectionitemid int
--赋值 计数器的定义
set @typeuid=(select collector_type_uid from syscollector_collector_types where name=
'Performance Counters Collector Type')
--定义数据收集项 一:数据收集集合的id 二:收集集合类型的uid
exec sp_syscollector_create_collection_item @collection_set_id=@collectionsetid,
@collector_type_uid=@typeuid,@name='收集内存与CPU计数器信息',
--指定频率
@frequency=5,
--收集项的id
@collection_item_id =@collectionitemid output,
--收集的内容
@parameters =N'
<ns:PerformanceCountersCollector xmlns:ns="DataCollectorType">
<PerformanceCounters Objects="Processor" Counters="% Processor Time" />
<PerformanceCounters Objects="Memory" Counters="Pages/sec" />
</ns:PerformanceCountersCollector>
' --动态管理视图的收集
set @typeuid=(select collector_type_uid from syscollector_collector_types where name=
'Generic T-SQL Query Collector Type')
exec sp_syscollector_create_collection_item @collection_set_id=@collectionsetid,
@collector_type_uid=@typeuid,@name='通过动态管理视图收集CPU信息',
@frequency=5,@collection_item_id =@collectionitemid output,
@parameters =N'
<ns:TSQLQueryCollector xmlns:ns="DataCollectorType">
<Query>
<Value>
select top 10 execution_count,total_worker_time,convert(varchar(2000),t.text) as sqltext
,total_worker_time/execution_count
as avgcpu from sys.dm_exec_query_stats as s
cross apply sys.dm_exec_sql_text(s.sql_handle) as t
order by avgcpu desc
</Value>
<OutputTable>
HRPerformanceTB
</OutputTable>
</Query>
<Databases UseSystemDatabases="false" UseUserDatabases="true">
<Database>SunliyuanDW</Database>
</Databases>
</ns:TSQLQueryCollector>
'
具体用法参考:
https://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=ZH-CN&k=k(SP_SYSCOLLECTOR_CREATE_COLLECTION_SET_TSQL);k(SQL12.SWB.TSQLRESULTS.F1);k(SQL12.SWB.TSQLQUERY.F1);k(MISCELLANEOUSFILESPROJECT);k(DevLang-TSQL)&rd=true
--查询系统视图
select * from syscollector_collector_types

计数器遵循的结构:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="DataCollectorType">
<xs:element name="PerformanceCountersCollector">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" name="PerformanceCounters">
<xs:complexType>
<xs:attribute name="Objects" type="xs:string" use="required" />
<xs:attribute name="Counters" type="xs:string" use="required" />
<xs:attribute name="Instances" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="StoreLocalizedCounterNames" type="xs:boolean" use="optional" default="false" />
</xs:complexType>
</xs:element>
</xs:schema>
T-Sql中的写法:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="DataCollectorType">
<xs:element name="TSQLQueryCollector">
<xs:complexType>
<xs:sequence>
<xs:element name="Query" minOccurs="1" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element name="Value" type="xs:string" />
<xs:element name="OutputTable" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Databases" minOccurs="0" maxOccurs="1">
<xs:complexType>
<xs:sequence>
<xs:element name="Database" minOccurs="0" maxOccurs="unbounded" type="xs:string" />
</xs:sequence>
<xs:attribute name="UseSystemDatabases" type="xs:boolean" use="optional" />
<xs:attribute name="UseUserDatabases" type="xs:boolean" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
性能的数据仓库:性能计数器信息

点击:

执行完后右键查看属性:

说明创建成功
在缓存文件夹中产生性能的数据:

对应的性能表中也有数据:

成功后的日志:

新建表中会产生数据:

会自动的生成作业计划:

遇到的错误:

解决方案:(启动这个服务)

存在无名的数据列:convert 后记得 起别名:sqltext

SqlServer性能优化 自定义动化性能收集(四)的更多相关文章
- SQLServer性能优化之---数据库级日记监控
上节回顾:https://www.cnblogs.com/dotnetcrazy/p/11029323.html 4.6.6.SQLServer监控 脚本示意:https://github.com/l ...
- 01.SQLServer性能优化之----强大的文件组----分盘存储
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 文章内容皆自己的理解,如有不足之处欢迎指正~谢谢 前天有学弟问逆天:“逆天,有没有一种方 ...
- 03.SQLServer性能优化之---存储优化系列
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 概 述:http://www.cnblogs.com/dunitian/p/60413 ...
- 02.SQLServer性能优化之---牛逼的OSQL----大数据导入
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 上一篇:01.SQLServer性能优化之----强大的文件组----分盘存储 http ...
- SQLServer性能优化专题
SQLServer性能优化专题 01.SQLServer性能优化之----强大的文件组----分盘存储(水平分库) http://www.cnblogs.com/dunitian/p/5276431. ...
- Linux性能优化实战学习笔记:第四十三讲
一.上节回顾 上一节,我们了解了 NAT(网络地址转换)的原理,学会了如何排查 NAT 带来的性能问题,最后还总结了 NAT 性能优化的基本思路.我先带你简单回顾一下. NAT 基于 Linux 内核 ...
- Linux性能优化实战学习笔记:第四十四讲
一.上节回顾 上一节,我们学了网络性能优化的几个思路,我先带你简单复习一下. 在优化网络的性能时,你可以结合 Linux 系统的网络协议栈和网络收发流程,然后从应用程序.套接字.传输层.网络层再到链路 ...
- Linux性能优化实战学习笔记:第四十五讲
一.上节回顾 专栏更新至今,四大基础模块的最后一个模块——网络篇,我们就已经学完了.很开心你还没有掉队,仍然在积极学习思考和实践操作,热情地留言和互动.还有不少同学分享了在实际生产环境中,碰到各种性能 ...
- SqlServer性能优化 手工性能收集动态管理视图(三)
动态管理视图: 具体的实例语句: --关于语句执行的基本情况 select * from sys.dm_exec_query_stats --动态管理函数 需要提供参数 select top 1 ...
随机推荐
- biweb添加新的模块
1.例如添加一个新闻模块,首先去纯净的项目的根目录复制出一个news文件夹到项目外 2.打开dreamweaver, 编辑 ->查找和替换 例如 新模块 叫 我的新闻,英文名叫mynews,则进 ...
- maven webjar构建及使用
这么做的目的想要把前端静态文件,css啊js啊一堆的放在一个maven工程下管理,需要的时候调用jar包直接引用. 1.把要打包文件放到另外的maven项目的/src/main/resources下 ...
- linux php redis 扩展安装
安装redis服务端 1 进入软件的下载路径 cd /soft wget http://download.redis.io/redis-stable.tar.gz tar -zxvf redis-st ...
- HDU 4944 FSF’s game(2014 Multi-University Training Contest 7)
思路: ans[n]= ans[n-1] + { (n,1),(n,2).....(n,n)} 现在任务 是 计算 { (n,1),(n,2).....(n,n)}(k=n的任意因子) 很明显 ...
- 解析txt文本,dom4j工具输出为xml文档
有如下一个ttl.txt文本文档,每一行用空格隔开的三段分别代表主谓宾, 要将它们输出为xml格式文档 工具:dom4j,jar包导入MyEclipse的Java Project工程 代码如下: pa ...
- 关于float高度塌陷问题
和所有刚入门的菜鸟一样,我发现float有高度塌陷问题,又很偶然的发现float元素后加<img/>能消除float带来的破坏性. 后来百度了一下,大部分的float高度塌陷问题都没有提及 ...
- GDI与GDI+ 贴图性能对比
在做绘图相关工作,由于对显示绘制结果实时性有要求,筛选了GDI , 与GDI+ 贴图性能. 这里假设在内存中已绘制完成一张图片,现需求显示在控件上,同时,总是更新全部区域. GDI+ 实现 priva ...
- VBA唏嘘戏——简单单元格的设定(实例)
由于有很多个Word文件,所以应用宏会更加方便排版,而且版式较为统一. Sub 设置列宽() ' ' 设置列宽宏 ' ' ActiveDocument.Tables().Cell(, ).Width ...
- Spring的入门的程序
1 下载Spring的开发包: spring-framework-3.2.0.RELEASE-dist.zip ---Spring开发包 docs :spring框架api和规范 libs :spri ...
- 面试复习(C++)之基数排序
#include <iostream> using namespace std; int maxbit(int *a,int n) { ;//一位 ;//十进制 ;i<n;i++) ...