定期监视和排除sql server性能问题的最佳工具和stream程是什么?
我们使用的是SQLH2(SQL Server健康和历史)。 它是作为Microsoft的附加软件包创build的,并且具有一套很好的SQL Server报告,它是免费的!
SQL Server运行状况和历史loggingMSDN
如果您只是在寻找定期的健康检查,那么您可以按计划设置这些报告,每周通过电子邮件发送给您。
如果您从报告或用户报告中发现问题,那么您将开始查看Perfmon和SQL Trace以获取线索和更具体的诊断信息。
我成了我公司的“DBA”。 我的任务是同样的事情。 我遇到了布伦特·奥扎尔的博客。 Perfmon是开始进行性能testing的好方法。 更深入的方法是使用SQL Server Profiler。 我刚刚从redgate下载了一个免费的电子书 。
在Sql Server 2005上我最喜欢的一个就是Object Execution Statistics。 我所有的数据访问都是通过存储过程进行的,所以这个报告显示了所有使用当前caching计划的proc的统计数据。
右键单击数据库 – > Reports – > Standard Reports – > Object Execution Statistics
任何运行缓慢或过于频繁的事物都会像拇指一样伸出手来。
SQL Server Profiler的很好。
我为Simple Talk编写了一篇文章,其中包括使用profiler来获取运行缓慢的查询
我倾向于每周运行一次这种跟踪,并将历史结果保存在监控数据库(生产服务器以外的某个地方)的表中。 这样一来,从一个星期到下一个星期的趋势是很容易的。
我们一直在使用一个名为zabbix的开源工具。 http://www.zabbix.com – 在mysql / php上运行。
它perfmon收集和graphics。 还监测/警报。 你可以拉任何perfmon计数器。
一些统计分析有点弱,所以我们将每小时统计信息转储到SQL Server中,以便在报告服务中定制报告,以回答如下问题 – 如果使用率保持线性,我的服务器平均运行时间为65%CPU时尚?
我一直在使用一个伟大的产品,Veritas I3,跟踪SQL服务器的负载,并可能会给你build议失踪索引等。
在Veritas I3中,您可以看到每个SQL语句使用的CPU,IO,内存,执行计划等。
但是我不得不让你失望,产品不是免费的。 🙁