由于统计信息引起的性能灾难
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 表名(索引名)
所谓统计信息:
按照默认设置,如果表中的某列没有索引,则SQL Server会自动为该列创建统计。然后,查询优化器评估该列中数据分布范围的统计信息,以选择一个更为有效的查询处理方案。分辨自动创建的统计很简单,在SQL Server 7.0和SQL Server 2000中,自动创建的统计的前缀为_WA_Sys。
如何获取统计信息呢?
dbcc show_statistics('表名',索引名)
即可看到某个索引的统计信息。
如何更新统计信息呢?
update statistics 表名
也可 update statistics 表名(索引名)
相关文章推荐
- SQL优化一例,由于动态性能视图统计信息不准确引起的查询缓慢
- oracle 由于impdp 引起的表统计信息被锁 ORA-20005: object statistics are locked
- oracle 由于impdp 引起的表统计信息被锁 ORA-20005: object statistics are locked
- ORACLE性能调整--统计信息的迁移
- 一次由于YoungGC引起的性能问题分析
- 人工智能系统通过网络提高其性能 “信息提取”系统转换纯文本为可以统计分析的数据
- 通过手动创建统计信息优化sql查询性能案例
- ORACLE性能调整--统计信息的迁移(Oracle- 性能调优)
- buffer cache性能诊断关注的统计信息
- 统计信息未自动收集引发的性能问题
- Oracle性能-查询统计信息的SQL语句
- MySQL:因为统计信息错误引起的sql问题
- FEP - NS3 - 测试 docker matrix, 获得 CPU, MEMORY, 网络性能的 统计信息 - no use
- Oracle性能优化之统计信息管理_超越OCP精通Oracle视频教程培训32
- 性能优化——统计信息——SQLServer自动更新和自动创建统计信息选项
- 是什么引起执行计划变得极其糟糕? 应该使用更新统计信息来解决它吗?
- 一起统计信息引起的血案
- Oracle性能分析12:对象统计信息
- ORACLE性能调整--统计信息的迁移
- 性能优化——统计信息——SQLServer自动更新和自动创建统计信息选项 (转载)