Chinaunix首页 | 论坛 | 博客
  • 博客访问: 691408
  • 博文数量: 176
  • 博客积分: 4791
  • 博客等级: 上校
  • 技术积分: 1921
  • 用 户 组: 普通用户
  • 注册时间: 2006-05-24 18:47
个人简介

it江湖漂,怎能不挨刀;一朝机器当,看你怎么着!

文章分类

全部博文(176)

文章存档

2014年(2)

2012年(17)

2011年(27)

2010年(18)

2009年(6)

2008年(21)

2007年(43)

2006年(42)

分类: LINUX

2010-03-11 16:11:23

一.在线查看执行计划
如果PLAN_TABLE表不存在,执行$ORACLE_HOME/rdbms/admin/utlxplan.sql创建plan_table表。
1.explain plan 
  for
  select * from ……
2.select * from table(DBMS_XPLAN.Display);

二.使用第三方工具:
plsql developer(F5)
Toad (Ctrl+E)
oracle

三.使用SQL*PLUS:
如果PLAN_TABLE表不存在,执行$ORACLE_HOME/rdbms/admin/utlxplan.sql创建plan_table表。
如果PLUSTRACE角色不存在,执行
$ORACLE_HOME/sqlplus/admin/plustrce.sql

1.sqlplus / as sysdba
  set autotrace on;
  or
  set autotrace traceexplain;
  or
  set autotrace trace explain statistics;
2.执行sql

四.sql trace
1.alter session set sql_trace=on;
2.执行sql
3.alter session set sql_trace=off;
4.查看相应的sql trace文件。

五.诊断事件(10046)
1.alter session set events ‘10046 trace name context forever,level 12′;
2.执行sql
3.alter session set events ‘10046 trace name context off’;

3.查看相应的sql trace文件。

 可利用TKPROF工具查看跟踪文件

  TKPROF是一个用于分析oracle跟踪文件并且产生一个更加清晰合理的输出结果的可执行工具。如果一个系统的执行效率比较低,一个比较好的方法是跟踪用户的会话并且使用TKPROF工具的排序功能格式化输出,从而找出有问题的SQL语句。

阅读(826) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~