Oracle中的SQL调优

时间:2010-09-14 07:07:31

标签: sql oracle optimization

是否有任何文章/链接可以找到SQL调优(Oracle)的示例。如果用例子解释它会很棒。我需要现有的查询,statstics,计划,然后建议查询/推荐和新计划。

我在谷歌上发现了几个非常好的链接:

  1. http://www.dba-oracle.com/art_sql_tune.htm
  2. http://www.orafaq.com/tuningguide/
  3. 然而,我正在寻找具有上述细节的实时示例,这些细节在这些文章中缺失。

    我希望我不要求太多。 : - )

4 个答案:

答案 0 :(得分:6)

快捷方式很少 - 为了获得最佳效果:

  1. 购买“基于成本的 Oracle Fundamentals“由Jonathan撰写 刘易斯
  2. 设置本地Oracle数据库 你有完全控制权
  3. 完成他的例子
  4. 本书解释了优化器如何做出决策。

    我不确定个人使用的许可影响,但也学习如何使用dbms_sqltune包 - 如果它可以在正常的优化器路径上找到改进的计划,它将生成一个显示差异的报告。你可以通过查看这些信息来获取很多信息。

答案 1 :(得分:1)

编写更好的SQL: O'Reilly的Dan Tow的“Tuning SQL”是一个非常好的跨平台SQL调优指南。这不是一个简短的阅读,但它确实涵盖了一些非常多毛的例子,并向您展示如何调整您的查询。 Oracle中没有FAST = TRUE选项;如果有,它将被隐藏,你不会被允许改变它。他的网站位于http://singingsql.com

按响应时间调整 Cary Millsap专注于使用Oracle等待接口和排队理论来调整过去20年或之后的SQL和系统;他现在的公司(http://method-r.com)和他之前的公司(http://hotsos.com)都有许多有用的资源。

通过优化工具统计调整 Wolfgang Breitling在http://centrexcc.com做了一些非常出色的工作,通过基数反馈来演示调优,以证明如果SQL很好并且负载太大,那么问题可能就是你在骗Oracle(或者甲骨文做出不安全的推论)关于数据的性质。然后他告诉你如何解决它。

所有这些都很有价值。所有这些都不完整。

我继承了乔纳森刘易斯的精彩工作;他在http://jonathanlewis.wordpress.com

有一个非常公平的调整博客

答案 2 :(得分:0)

您也可以尝试使用位于https://sql-tuning.com

的Oracle SQL调优工具

答案 3 :(得分:-1)

http://philip.greenspun.com/sql/tuning.html

Sql调优并不容易,因为它取决于很多因素。没有通用的方法。有时,只需添加索引或提示,有时需要更改结构。