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程序整体实例解说篇。

  exerow number of rows processed during execute

  exemis number of library cache misses during execute

  fchcnt number of times fetch was called

  fchcpu cpu time spent fetching

  fchela elapsed time fetching

  fchdsk number of disk reads during fetch

  fchqry number of buffers for consistent read during fetch

  fchcu number of buffers for current read during fetch

  fchrow number of rows fetched

  userid userid of user that parsed the cursor

  PRINT

  只列出指定数量的已排序的sql语句,排序的条件参见SORT参数。如果忽略此参数,tkprof将跟踪文件中的所有的sql语句及其相关的分析数据存放到输出文件中。

  Print与sort参数组合在一起,可以实现:

  找出某一阶段耗费cpu最多的前n个sql

  找出某一阶段读硬盘最多的前n个sql等等。

  INSERT

  创建一个sql脚本文件,里面包含create table 与insert语句。利用这个脚本文件创建一个表及插入数据后,可以得到跟踪文件中所有sql语句(包含recursive SQL)的统计信息。如

  ,depth,user_id,
  parse_cnt,parse_cpu,parse_elap,parse_disk,
  parse_query,parse_current,parse_miss
  ,exe_count,exe_cpu,exe_elap,exe_disk,exe_query,
  exe_current,exe_miss,exe_rows
  ,fetch_count,fetch_cpu,fetch_elap,fetch_disk,
  fetch_query,fetch_current,fetch_rows,ticks
  ,sql_statement

  利用这些信息,也可以发现有问题的sql。即是格式化好的输出文件中有关sql性能信息数据的数据库表的形式。

共12页。 9 1 2 3 4 5 6 7 8 9 :

网友评论

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

邮件订阅


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