我们将数据库服务器从SQLServer 2005移植到SQLServer 2008(SP1)。新服务器拥有更多处理器(4个Quadcore与1个Quadcore)和更多内存(4GB与64GB)。
处理器是2.1Ghz(新)与2.0Ghz(旧)。 新的操作系统是Windows Server 2008,旧的是Windows Server 2003。
数据库通过备份/恢复传输,并以本机SQL Server 2008模式运行(不是在SQLServer 2005兼容模式下)。
新服务器上的某些查询比以前运行得慢。这些查询使用索引视图。查询计划在两个系统上看起来都是一样的。 大多数查询都是相同的。
我的任务是现在决定我们的SQLServer安装是否有问题,如果我们遇到数据库问题或者这是一个被驱逐的结果。
我首先要比较两者的表现
有一种简单的方法吗?
有没有人在新的SQLServer安装上有比较结果?
答案 0 :(得分:3)
在检查硬件/操作系统之前,请确保:
然后再次运行测试。此外,SQL Server的版本是否相同?根据SQL Server的版本(标准版与企业版)对索引视图编写查询的方式有所不同。
此外,通过从中选择1行并观察查询计划,确认索引视图仍然正确编入索引。您应该只在结果计划中看到一个表。
答案 1 :(得分:0)
收集两个系统性能的最简单方法是运行PAL,并收集适当的数据。
PAL为SQL Server提供额外的计数器集。它将收集和分析数据,并让您知道您遇到问题的地方。
PAL可以在这里找到 http://www.codeplex.com/PAL另一个重要的问题是文件组的位置。底层存储系统是如何定义的?它通常会对SQL Server产生巨大影响。 (你应该在这里讨论spindels,而不是原始大小......)确保你的数据库文件没有与其他任何人共享资源