【问题标题】:SQL Server 2005 Performance Issues and TestingSQL Server 2005 性能问题和测试
【发布时间】:2012-05-31 20:26:21
【问题描述】:

我有使用密集 sql 查询并在 sql 程序集中运行的统计数学函数。我刚刚增加了我的数据库服务器(IIS 6、SQL Server 2005)上的 RAM,但在允许程序集运行的 5 分钟内,我的查询仍然占用了 100% 的 CPU。有没有办法让程序集限制他们的 CPU?在 100% 时,服务器变得无响应。任何 sql 调优也会有所帮助。

【问题讨论】:

  • 您是否 100% 确定是新 RAM 导致了问题..?您是否运行过任何类型的 Profiler 或查看过任何使用 SQL 函数、StoredProc 或 Select 语句的代码??
  • 在 SQL 2008+ 中,您可以使用资源调控器,但在早期版本中,没有标准方法可以做到这一点。即便如此,似乎某些 CLR 函数仍然是 RG 的not managed。所以最好的选择可能是优化你的代码,这需要大量关于代码和数据的知识。也许您可以隔离一个“问题代码”示例并要求改进?

标签: sql-server performance sql-server-2005


【解决方案1】:

SQLServer 2008 有一个资源调控器,允许您根据用于给定连接的 db 用户名来限制 CPU 和/或 I/O。如果您可以选择升级到 SQL Server 2008,则您的 stats 程序集可以使用专用的数据库用户名,允许它使用 100% 的 CPU,除非另一个数据库连接需要 CPU,然后它让给其他进程。

这很好用。我们有对数千个数据点进行复杂统计分析的查询和报告。它也是 CPU 密集型的。在我们升级到 SQL Server 2008 之前,我们遇到了各种各样的性能问题。现在一切顺利。 2008 年的其他新功能都不错,但资源管理器是我们升级的真正原因。

【讨论】:

  • 谢谢,但我认为目前我们还不能升级
猜你喜欢
  • 2011-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多