利用typeperf工具收集SQL Server性能数据

一.利用TypePerf.exe命令行工具把Windows操作系统的性能计数器数据记录到数据库中

 

可以在作业中建立以下脚本

1.启用xp_cmdshell

--默认情况下,sql server2005安装完后,xp_cmdshell是禁用的(可能是安全考虑),如果要使用它,可按以下步骤

 

-- 允许配置高级选项

EXEC sp_configure 'show advanced options', 1

GO

-- 重新配置

RECONFIGURE

GO

-- 启用xp_cmdshell

EXEC sp_configure 'xp_cmdshell', 1

GO

--重新配置

RECONFIGURE

GO

 

2.定时开启,开始记录性能计数器日志

--实现的功能:将“MyCounters.txt”文件中列出的计数器,按照每秒钟的时间间隔,记录到SQL数据库中,"SQL:SystemLog!TestSystemLog"ODBC数据源建立的系统DSN

EXEC xp_cmdshell 'typeperf -cf c:/MyCounters.txt -si 5 -f SQL -o SQL:SystemLog!TestSystemLog'

 

--"MyCounters.txt"可以利用下面的命令在CMD命令窗口中执行后生成

TYPEPERF -qx "Processor" >>c:/MyCounters.txt

 

3. 定时关闭

--结束typeperf.exe的进程

EXEC xp_cmdshell 'tskill typeperf'

 

4.关闭xp_cmdshell

--用完后,要记得将xp_cmdshell禁用(出于安全考虑)

-- 允许配置高级选项

EXEC sp_configure 'show advanced options', 1

GO

-- 重新配置

RECONFIGURE

GO

-- 禁用xp_cmdshell

EXEC sp_configure 'xp_cmdshell', 0

GO

--重新配置

RECONFIGURE

GO

 

5.利用数据库中记录的日志分析性能数据

 

二.带来的好处:

1.  可以根据计划定时抓取服务器性能数据包括CPU、内存和磁盘利用率以及SQL Server特定数据。为数据库服务器的性能分析提供帮助。

 

2.  可以根据数据库中记录的日志结合Reporting Service绘制性能分析的报表。

 

3.  可以定制作业实现自动化

 

 

三.带来的影响:

1.  会增加服务器的负载,在测试时观察了一下这个命令的开销,基本上启动后8M左右的内存运行,开销比较小

 

另外:如果考虑实施的话,可以新建一个数据库(专门用于监控服务器性能等的表),便于维护和管理

0
0
(请您对文章做出评价)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值