您的位置:首页 > 其它

由于统计信息引起的性能灾难

2010-08-04 12:58 183 查看
某日,公司的某站点突然某个业务超时频频,遂检查数据库查询,发现简单的selectcount也非常之慢,检索top10也比较慢,这张表本身数据量并不大,只有1200多W,检查所有索引也都覆盖到,很奇怪的问题,最后发现是统计信息引起的问题。。

所谓统计信息:

按照默认设置,如果表中的某列没有索引,则SQL Server会自动为该列创建统计。然后,查询优化器评估该列中数据分布范围的统计信息,以选择一个更为有效的查询处理方案。分辨自动创建的统计很简单,在SQL Server 7.0和SQL Server 2000中,自动创建的统计的前缀为_WA_Sys。

如何获取统计信息呢?

dbcc show_statistics('表名',索引名)

即可看到某个索引的统计信息。

如何更新统计信息呢?

update statistics 表名

也可 update statistics 表名(索引名)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: