SQL Server索引不起作用

时间:2010-06-10 13:51:04

标签: sql-server-2005

我在测试服务器和我自己的机器上设置了一些索引,它运行良好。 但是当我试图将数据放在生产服务器上时(通过导入/导出向导复制所有测试数据,并在设置主键,然后设置FK和索引之后),索引似乎无法正常工作。

他们在那里,但是查询真的非常慢,因为索引根本不存在。我能错过什么?我注意到生产索引比测试索引更加分散。

我尝试重建和重新组织索引,但它没有用。我正在使用SQL Server 2005(90)。

1 个答案:

答案 0 :(得分:0)

  

我在测试服务器和我自己的机器上设置了一些索引,并且效果很好。但是当我试图将数据放在生产服务器上时

第一个问题是,生产数据是否与测试服务器具有相同数量的数据,通常生产箱中有更多数据,而当测试盒上的数据快速生成时,它们并不总是在生产箱上快速生成,因为查询不是以某种方式编写的,因此将使用索引。

查看执行计划,看看是否看到了搜索或扫描

一般情况下,如果查询不是SARGable或者索引选择性太低,则不会使用索引

还是在生产箱上创建和维护统计数据吗?

看看Your testbed has to have the same volume of data as on production in order to simulate normal usage  获得有关如何检查SARGable查询的一些想法