重启后SQL Server变得很慢

重启后SQL Server变得很慢

我已经在 stackoverflow 上发布了这个帖子,但有人暗示我,在 serverfault 上我可能会更幸运。我们在 Windows Server 2008 上使用 SQL Server 2005。该服务器有 48 GB RAM。SQL Server 配置为使用 40 GB RAM。只托管一个数据库(大约 70 GB)。除了 SQL Server 之外,唯一的应用程序是将客户端连接到数据库的应用程序服务器。

现在我们遇到了以下问题:

重启服务器后,我们的性能非常好。服务器占用了允许的 40 GB RAM,然后运行速度极快。但大约 4 周后,系统变得越来越慢。语句的执行速度(在分析器中可见)正在缓慢提升。但我看不出服务器上出了什么问题。

  • CPU 使用率约为 20%
  • I/O 似乎也没有问题
  • 进程监视器也没有显示有奇怪的应用程序或类似的东西。
  • Eventlog 也没有有趣的消息
  • 没有开放交易或阻止可查看
  • 我们的应用中不使用光标

我们已经尝试了以下方法,但没有效果:

  1. 使用语句删除缓存

    DBCC FreeProcCache
    DBCC FREESYSTEMCACHE('ALL')
    DBCC DropCleanbuffers
    
  2. 重新启动了我们正在使用的应用服务器。

  3. 重新启动 SQL Server 服务

但除了重启整个服务器之外,其他都无济于事。有什么想法吗?

答案1

打电话给微软。说真的 - 这很有趣。除非你忽略了什么,否则这种事不应该发生。几周后就不会发生了。

  • 我们可以假设服务器在一天之内就会变热,对吗?例如:充分利用其资源并处理正常负载(冷服务器速度较慢,因为缓存显然是空的)。

  • 任何类型的缓存都不应在几周后发生。我可以理解存储过程中不良查询计划带来的污染会在几天后出现,但不能理解 4 周后出现的情况……

...除了:您是否在每月间隔内执行与服务器变慢的时间相关的某件事?

肯定有人需要查看服务器的完整性能指标,然后花一些时间找出答案。PSS(专业支持服务)的不错案例 ;)

如何进行索引重组?

我会寻找您启动的每月(30 天间隔)进程,然后由于某种原因导致服务器运行缓慢。

相关内容