一、 什么情况下需要优化SQL? 1、单个查询执行时间非常长 2、许多查询执行时间过长,但是有一个代表性的可以调整(使用绑定变量)
1、数据库版本的升级改变了行为或有bug 2、统计信息不正确 3、数据变化 4、应用变化
1、索引:没被创建、建了但无效、建了但没走索引 2、表连接的顺序错了 3、表连接的类型错了 4、谓词没有推进,视图没有合并 5、查询转化不当(COST) 6、其它问题
1、CBO估算表里的行数与实际相差很大 2、CBO的算法有缺陷 3、统计信息不正确 4、其它原因
1、定位缓慢的SQL ①客户反应 ②OS中TOP工具 ③AWR/ASH/ADDM/STATSPACK/10046(TKProf)/TRCA ④sql脚本 2、验证此SQL是慢的 3、确定此SQL缓慢的问题 ①统计信息 ②CBO ③执行计划 ④Hints ⑤索引 4、解决此SQL
1、优化器 2、执行计划 3、Cursor和绑定变量 4、查询转换 5、 统计信息 6、Hints
what(is broken) ---> why(is broken) ---> how(to fix it)
**********本博客所有内容均为原创,如有转载请注明作者和出处!!!********** QQ: 252803295 Email: oracledba_cn@hotmail.com Blog: http://blog.csdn.net/guoyJoe ITPUB: http://www.itpub.net/space-uid-28460966.html OCM: http://education.oracle.com/education/otn/YGuo.HTM 答案在:http://blog.csdn.net/guoyjoe/article/details/8624392 Oracle@Paradise 总群:127149411 Oracle@Paradise No.1群:177089463(已满) Oracle@Paradise No.2群:121341761 Oracle@Paradise No.3群:140856036 |
SQL优化方法
最新推荐文章于 2023-05-30 10:01:43 发布