产生top sql的原因

来源:互联网 发布:软件程序员需要学什么 编辑:程序博客网 时间:2024/04/30 21:05

这是一个网友的面试题,问到top sql一般是什么情况下产生的,不同的公司,dba参与项目的阶段不同,所以答案也就有所区别,一般来讲,top sql产生的阶段有:系统设计阶段(表结构设计),编码实现阶段(SQL编写),SQL审核优化阶段等,这样涉及到的人的因素就有:系统设计人员+开发人员+DBA,任何一个环节出了问题,就有可能出现top sql,所以一个项目,出了性能问题,并不一定是DBA的责任,但优秀的DBA,可以消除潜在的风险。


产生top sql的原因,细化起来有以下原因:
1 表结构设计的不合理
2 索引创建不合理
3 不必要的表关联
4 隐式数据类型转换导致没走索引
5 使用table类型的函数而没有指定合适的hints
6 不使用绑定变量
7 表与索引的统计信息陈旧

 
原创粉丝点击