欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle 开启autotrace功能

程序员文章站 2024-02-06 15:18:52
...

默认的oracle的sqlplus是不能够启动执行分析计划、统计执行效率的,启动如下功能只需要几步:1:通过sys用户sysdba角色登陆2:创

默认的Oracle的sqlplus是不能够启动执行分析计划、统计执行效率的,启动如下功能只需要几步:

1:通过sys用户sysdba角色登陆

2:创建autotrace 角色,执行如下脚本

$ORACLE_HOME\RDBMS\ADMIN\tracetab.sql

在Oracle9i中需要运行$ORACLE_HOME\RDBMS\ADMIN\utlxplan.sql脚本生成plan_table表;
在Oracle10g中PLAN_TABLE不再需要创建,Oracle缺省增加了一个字典表PLAN_TABLE$,然后基于PLAN_TABLE$创建公用同义词供用户使用

将该角色赋予需要进行跟踪分析的用户

3:启动跟踪

用法: SET AUTOT[RACE] {OFF | ON | TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]]

举例:
SET AUTOT[RACE] OFF 停止AutoTrace
SET AUTOT[RACE] ON 开启AutoTrace,显示AUTOTRACE信息和SQL执行结果
SET AUTOT[RACE] TRACEONLY 开启AutoTrace,,仅显示AUTOTRACE信息
SET AUTOT[RACE] ON EXPLAIN 开启AutoTrace,仅显示AUTOTRACE的EXPLAIN信息
SET AUTOT[RACE] ON STATISTICS开启AutoTrace,仅显示AUTOTRACE的STATISTICS信息

结果解释
physical reads 物理读——执行SQL的过程中,从硬盘上读取的数据块个数
redo size 重做数——执行SQL的过程中,产生的重做日志的大小
bytes set via sql*net to client 通过sql*net发送给客户端的字节数
bytes received via sql*net from client 通过sql*net接受客户端的字节数
sorts(memory) 在内存中发生的排序
sorts(disk) 不能在内存中发生的排序,需要硬盘来协助
rows processed 结果的记录数

逻辑读 =(db block gets+ consistent gets)

set atuotrace on;

set autotrace traceonly explain statistics;

Oracle 开启autotrace功能