`

AutoTrace执行结果说明

阅读更多
统计信息
---------------------------------------------------------
        299  recursive calls
          0  db block gets
       2359  consistent gets
          0  physical reads
          0  redo size
        410  bytes sent via SQL*Net to client
        385  bytes received via SQL*Net from client
          2  SQL*Net roundtrips to/from client
          5  sorts (memory)
          0  sorts (disk)
          1  rows processed

 

这些数据就是这条SQL语句的执行状态。下面分别说一下各个数据项的含义:

recursive calls

递归调用-执行SQL的时候的产生的递归调用的数量,这个参数和访问数据字典的次数有很大的关系。一般来说,这个参数值不会很大。

db block gets

DB块取-在发生INSERT,DELETE,UPDATE,SELECT FOR UPDATE的时候,数据库缓冲区中的数据库块的个数。在SELECT语句中一般为0。

db block gets + consistent gets = logical io (as opposed to physical io).

consistent gets

一致性读-除了SELECT FOR UPDATE的时候,从数据库缓冲区中读取的数据块的个数

db block gets + consistent gets = logical io (as opposed to physical io)

physical reads

物理读-physical reads = physical io (as opposed to logical io)

redo size

重做日志大小-执行SQL的过程中,产生的重做日志的大小

bytes sent via SQL*Net to client

通过sql*net发送给客户端的字节数

bytes received via SQL*Net from client

通过sql*net接受客户端的字节数

sql*net roundtrips to/from client

See how setting the arraysize affects SQL*Net roundtrips to/from client.

sorts(memory)

在内存中发生的排序

sorts(disk)

不能在内存中发生的排序,需要硬盘来协助

rows processed

结果的记录数

 

用AutoTrace进行优化的注意事项

1. 可以通过设置timing来得到执行SQL所用的时间,但不能仅把这个时间来当作SQL执行效率的唯一量度。这个时间会包括进行AUTOTRACE的一些时间消耗,所以这个时间并不仅仅是SQL执行的时间。这个时间会与SQL执行时间有一定的误差,而在SQL比较简单的时候尤为明显。

2. 判断SQL效率高低应该通过执行SQL执行状态里面的逻辑读的数量

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Oracle查看SQL执行计划SQL性能分析.docx

    #### 三、执行计划结果信息说明 执行计划示例可能会输出以下信息: ``` PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 1388734953 ----...

    读懂oracle的执行计划

    执行计划是Oracle优化器根据统计信息和优化算法生成的用于执行SQL语句的具体步骤说明,它决定了SQL语句如何访问数据库中的数据,如何执行join操作,以及如何返回查询结果。 ### 执行计划的重要性 执行计划贯穿于...

    oracle数据库执行计划

    下面通过一个具体的例子来说明不同的执行计划: ```sql SQL> set autotrace traceonly; 执行计划一: SQL> select count(*) from t; Execution Plan --------------------- 0 SELECT STATEMENT Optimizer=CHOOSE ...

    oracle explain plan总结

    ### Oracle Explain Plan 总结 #### 一、Oracle 执行计划的重要性 在Oracle数据库中,为了提高查询效率和...无论是使用`EXPLAIN PLAN`还是`AUTOTRACE`,都能够帮助我们更好地理解SQL语句的执行流程,并据此进行优化。

    ORACLEEXPLAINPLAN的总结[文].pdf

    此外,`AUTOTRACE`还可以与其他命令结合使用,例如`SET TIMING ON`来显示SQL语句的执行时间,或者`SET AUTOTRACE ON EXPLAIN`来仅显示执行计划而不会执行语句。 总的来说,`EXPLAIN PLAN`和`AUTOTRACE`是Oracle...

    Oracle数据库连接与会话

    在SQL*Plus中打开autotrace后,当执行DML操作(insert、update、delete、select和merge)时,SQL*Plus将完成以下操作: 1. 如果第二个会话不存在,则使用当前连接创建一个新的会话。 2. SQL*Plus要求产生的新会话...

    Oracle中explain_plan的用法

    set autotrace traceonly /*traceonly 可以不显示执行结果*/ SQL> / Execution Plan ---------------------------------------------------------- 0 SELECT STATEMENT Optimizer=CHOOSE 1 0 NESTED LOOPS 2 1...

    oracle performance tuning

    Oracle性能调优主要包括查询处理、执行计划分析(Explain plan)和自动追踪(Autotrace)等技术,这些都是提升数据库性能的关键手段。 查询处理是数据库系统的核心功能之一,涉及如何高效地执行SQL查询。在查询处理...

    优化SQL对ORACLE数据库性能的提高.pdf

    Autotrace可以显示SQL语句的执行计划和统计信息,帮助开发者理解SQL执行的效率。通过分析这些信息,可以确定是CPU、I/O还是其他资源导致了性能瓶颈。 5. SQL语句的优化技巧:文档中出现了一些SQL语句的示例,例如...

    Oracle SQL优化实例讲解.pdf

    如果查询执行计划中包含“INDEX”关键字,说明查询使用了索引。 7. 结合AUTOTRACE创建并验证函数索引 函数索引是在列上基于表达式创建的索引,用于加速基于特定函数或操作的查询。AUTOTRACE可以用来验证在创建函数...

    oracle数据库笔试题.pdf

    答案是执行计划是数据库内部的执行步骤,可以通过 set autotrace on、select * from table、alter session set event '10046 trace name context forever,level 12 ';SYS.DBMS_SYSTEM.SET_SQL_TRACE_IN_SESSION=(SID...

    阿里巴巴DBA面试题

    在不借助第三方工具的情况下,可以使用SET AUTOTRACE ON来跟踪SQL语句的执行,或者使用EXPLAIN PLAN FOR来获取SQL的执行计划。此外,DBMS_XPLAN.DISPLAY函数可以展示更详细的执行计划信息。 为了定位资源消耗大的...

    阿里巴巴ORACLE DBA面试题.pdf

    文件还提供了SQL脚本示例,说明了如何通过查询v$session、v$process和v$sqlarea视图来定位消耗资源多的SQL语句,并且给出了具体的SQL查询脚本用于执行这一过程。 最后,文件中提到了一些实用的SQL脚本技巧,例如...

    Oracle 常用命令大全

    根据提供的文件信息,这里将对Oracle常用命令进行详细的解析与说明。从标题“Oracle 常用命令大全”以及描述“Oracle 常用命令大全”来看,文章旨在全面介绍Oracle数据库中的各种实用命令。接下来,我们将逐一分析并...

    第21章 Oracle的性能优化.ppt

    使用AUTOTRACE或EXPLAIN PLAN可以查看执行计划,通过对比不同执行计划,选择最优策略。 21.3.2 优化子查询: 子查询虽然功能强大,但可能导致性能问题,尤其是数据量大时。考虑使用连接(JOINs)替代子查询,或者...

    ORACLE笔试题[参考].pdf

    第二种是在SQLPLUS中使用`SET AUTOTRACE ON`,这将显示执行计划和统计信息。 3. **CBO(Cost-Based Optimizer)与 RBO(Rule-Based Optimizer)**:CBO是基于成本的优化器,它根据表的统计信息选择成本最低的执行...

    linux_oracle11g_索引笔记

    - `SET AUTOTRACE TRACEONLY`则仅显示执行计划,不执行实际查询。 4. **查询优化与索引使用**: - **索引范围扫描**:当查询条件包含范围操作符(如`>`、`、`>=`、`)时,数据库可能会使用索引范围扫描。 - **IN...

    SQL性能优化专题分享

    下面将详细说明标题和描述中提及的知识点: 1. SQL性能优化专题 - 这一部分是整个分享的主题,强调了性能优化在SQL编程中的重要性。性能优化是保证数据库能够高效运行的关键步骤,尤其是在大型数据库系统中,它...

    where条件顺序不同、性能不同示例探讨

    从给出的示例中可以看出,在Oracle 10G版本中,通过autotrace功能分析执行计划,两个where条件的顺序不同,但是执行计划结果却是一样的。这说明在这个特定案例中,Oracle的优化器已经足够智能,能够识别出逻辑上等价...

Global site tag (gtag.js) - Google Analytics