CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

数据库 | Oracle | DB2 | SQL Server | MySQL | 商业智能 | BI | DBA | Sybase| SQL Server 2008

您现在的位置: IT专家网 > 数据库子站 > 数据库技巧

优化SQL的另一种思维7 tkprof程序整体实例解说

作者: Peak Wong,  出处:IT专家网, 责任编辑: 李书琴, 
2008-03-17 10:01
  优化SQL的另一种思维系列文章是作者用了快一年的时间完成的SQL优化文章,它的原理实际上是通过分析SQL语句的执行计划来实现对整体SQL进行优化的,这是多年项目经验的总结,由于考虑到目前国内的Oracle部署还基本维持在Oracle 8 和Oracle 9的水平上,所以里面的模拟环境都是在Oracle 8.3下进行的,希望可以针对性更强一些。本文是系列连载的第七章中tkprof程序整体实例解说篇。

  《优化SQL的另一种思维目录

  一、性能调整综述

  二、有效的应用设计

  三、SQL语句处理的过程

  四、ORACLE的优化器

  五、ORACLE的执行计划

    背景知识

    访问路径(方法) -- access path

    表之间的连接

    如何产生执行计划

    如何分析执行计划

    如何干预执行计划 - - 使用hints提示

    具体测试实例

    具体案例分析

  六、其它注意事项

  七、整体实例分析

    客户端程序优化SQL步骤

    tkprof程序整体实例解说

  【IT专家网独家】

  现对tkprof程序做进一步的说明:

  在打开跟踪功能后,oracle将被跟踪session中正在执行的SQL的性能状态数据都收集到一个跟踪文件中。这个跟踪文件提供了许多有用的信息,例如一个sql的解析次数、执行次数、fetch次数、物理读次数、逻辑读次数、CPU使用时间等,利用这些信息可以诊断你的sql的问题,从而用来优化你的系统。不幸的是,生成的跟踪文件中的数据是我们难以理解的,所以要用TKPROF工具对其进行转换,转换成我们易于理解格式。tkprof是oracle提供的实用工具,类似于sql*plus,在安装完oracle客户端后就自动安装到系统中,直接在命令符下用就可以了。

  当在打开跟踪功能时发生了recursive calls,则tkprof也会产生这些recursive calls的统计信息,并清楚的在格式化输出文件中标名它们为recursive calls。

  注意:recursive calls的统计数据是包含在recursive calls上的,并不包含在引起该recursive calls语句的sql语句上面。所以计算一个sql语句耗费的资源时,也要考虑该sql语句引起recursive calls语句花费的资源。通过将sys参数设为no时,我们变可以在格式化的输出文件中屏蔽掉这些recursive calls信息。

  如何得到tkprof的帮助信息:

  运行tkprof时,不带任何参数,就可以得到该工具的帮助信息。

  执行计划:

  ---------------

  一个语句的执行计划是oracle执行这个sql语句的一系列指令。通过检验执行计划,你可以更好的知道oracle如何执行你的sql语句,这个信息可以帮助你决定是否你写的sql语句已经使用了索引。

共12页。 1 2 3 4 5 6 ... :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅


    
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i