【问题标题】:understanding tracefile generated from tkprof了解从 tkprof 生成的跟踪文件
【发布时间】:2011-10-26 19:34:32
【问题描述】:

大家好,我正在学习使用 oracle 10g 进行查询优化,但在理解下面的文件时遇到了一些麻烦。 有人可以解释下面的文件,它是我运行的查询的跟踪文件。 我知道 CPU 和经过的时间是多少(查询从数据库中获取数据所需的时间) 但不确定“磁盘”和“查询”。

call     count       cpu    elapsed       disk      query    current  rows
------- ------  -------- ---------- ---------- ---------- ----------  -------
Parse        1      0.00       0.00          0          0          0     0
Execute      1      0.00       0.00          0          0          0     0
Fetch     9001      0.17       0.15       1812      16205          0   134999
------- ------  -------- ---------- ---------- ---------- ----------  -------
total     9003      0.17       0.15       1812      16205          0   134999

【问题讨论】:

  • 这些列在文件的最开始解释。

标签: sql performance oracle sql-optimization


【解决方案1】:

我过去曾写过一篇关于此的文章 - 如果您刚开始,这可能对您有用:

http://betteratoracle.com/posts/14-sql-trace-and-tkprof

在 tkprof 输出中,DISK 列表示从磁盘读取了多少块,相当于自动跟踪输出中的 PHYSICAL READS。

QUERY 列是回答查询所需的逻辑 I/O 操作数,可能来自缓冲区缓存或磁盘。这等效于自动跟踪中的 CONSISTENT GETS 统计信息。

CURRENT 列表示当前模式下获得的块数,通常需要更新。

【讨论】:

    猜你喜欢
    • 2018-11-27
    • 2012-10-03
    • 2017-12-25
    • 2016-02-02
    • 2021-03-26
    • 2016-05-26
    • 2019-10-02
    • 2018-08-16
    相关资源
    最近更新 更多