我们已经将少量的serevr迁移到了命名实例,而且我遇到了存储过程需要更多时间执行的情况。存储过程具有指向表的一些业务逻辑。我有索引在桌子上。我怀疑在两个不同的生产数据库中用不同的时间在相同的表上使用相同的索引的存储过程是如何的。据我所知,数据库性能取决于加载到数据库。但我是在非营业时间,我认为负载也差不多。在新命名的instancwe服务器上执行10秒钟,在旧服务器上执行3秒。是否需要在新服务器中对表进行碎片整理。它能解决问题吗。是否知道如何检查新服务器中的问题所在。
编辑:当我检查执行计划时,它给了38%的时间在急切的假脱机中(创建临时索引)。你能解释一下我怎么才能避免这部分的过度使用吗?我不会让这个文件执行到未命名的实例服务器(在该服务器中,执行需要3秒)。
编辑:将重新构建索引,使性能得到改善
发布于 2011-07-26 17:39:58
首先检查:检查两台服务器上查询的执行计划--它们匹配吗?
编辑:计划不匹配,所以接下来的想法是模式(索引)不一样,或者更新实例上的统计数据不最新。在较新的实例上尝试一个sp_updatestats,看看计划是否改变。
https://stackoverflow.com/questions/6834066
复制相似问题