oracle10g sql跟踪,SQL性能的度量 - 语句级别的SQL跟踪autotrace

在Oracle 10g之前,使用autotrace还需要创建plustrace角色,并把该角色授予所有用户:

@?\rdbms\admin\plustrace.sql

grant

plustrace to public;

Oracle

10g之后autotrace的功能增强了,并简化了以上操作,一个autotrace就可以完成所有的输出。

使用autotrace命令格式如下:

set

autot[race] {off|on|trace[only]} [exp[lain]] [stat[istics]]

追踪所有信息:

set autot on

只显示执行计划和统计信息而不查看执行结果:

set autot

trace exp stat

在既要显示执行计划又要显示统计信息时,也可以简略写为

set autot

trace

此时执行一个SQL观察输出结果

select count(*) from

scott.emp;

已用时间:  00: 00: 00.03

执行计划

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

Plan hash value:

2937609675

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

| Id  | Operation        | Name

| Rows  | Cost (%CPU)| Time     |

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

|   0 | SELECT STATEMENT |        |

1 |     1   (0)| 00:00:01 |

|   1 |

SORT AGGREGATE  |        |

1 |            |          |

|   2 |

INDEX FULL SCAN| PK_EMP |    14

|     1

(0)| 00:00:01 |

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

统计信息

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

1

recursive calls

0

db block gets

1

consistent gets

1

physical reads

0

redo size

527

bytes sent via SQL*Net to client

520

bytes received via SQL*Net from client

2

SQL*Net roundtrips to/from client

0

sorts (memory)

0

sorts (disk)

1

rows processed

与explain工具的区别是:explain仅分析语句,而autotrace无论怎样,语句总是要被执行的。

停止追踪时

set autot off

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值