zoukankan      html  css  js  c++  java
  • 设置SQL*Plus 的AUTOTRACE

    AUTOTRACE 是SQL*Plus 中一个工具,可以显示所执行查询的解释计划(explain plan)以及所用的
    资源。这本书中大量使用了AUTOTRACE 工具。
    配置AUTOTRACE 的方法不止一种,以下是我采用的方法:
    (1)cd [ORACLE_HOME]/rdbms/admin;
    (2)作为SYSTEM 登录SQL*Plus;
    (3)运行@utlxplan;
    (4)运行CREATE PUBLIC SYNONYM PLAN_TABLE FOR PLAN_TABLE;
    (5)运行GRANT ALL ON PLAN_TABLE TO PUBLIC。


    如果愿意,可以把GRANT TO PUBLIC 中的PUBLIC 替换为某个用户。通过将PLAN_TABLE 置为public,
    任何人都可以使用SQL*Plus 进行跟踪(在我看来这并不是件坏事)。这么一来,就不需要每个用户都安装
    自己的计划表。还有一种做法是,在想要使用AUTOTRACE 的每个模式中分别运行@utlxplan。


    下一步是创建并授予PLUSTRACE 角色:
    (1)cd [ORACLE_HOME]/sqlplus/admin;
    (2)作为SYS 或SYSDBA 登录SQL*Plus;
    (3)运行@plustrce;
    (4)运行GRANT PLUSTRACE TO PUBLIC。
    重申一遍,如果愿意,可以把GRANT 命令中PUBLIC 替换为每个用户。


    关于AUTOTRACE
    你会自动得到一个AUTOTRACE 报告,其中可能列出SQL 优化器所用的执行路径,以及语句的执行统计
    信息。成功执行SQL DML(即SELECT、DELETE、UPDATE、MERGE 和INSERT)语句后就会生成这个报告。它
    对于监视并调优这些语句的性能很有帮助。

    控制报告
    通过设置AUTOTRACE 系统变量可以控制这个报告:

     SET AUTOTRACE OFF:不生成AUTOTRACE 报告,这是默认设置。
     SET AUTOTRACE ON EXPLAIN:AUTOTRACE 报告只显示优化器执行路径。
     SET AUTOTRACE ON STATISTICS:AUTOTRACE 报告只显示SQL 语句的执行统计信息。
     SET AUTOTRACE ON:AUTOTRACE 报告既包括优化器执行路径,又包括SQL 语句的执行统计信息。
     SET AUTOTRACE TRACEONLY:这与SET AUTOTRACE ON 类似,但是不显示用户的查询输出(如果有的话)。

    《Oracle9i10g编程艺术》

  • 相关阅读:
    销售类
    语法
    编辑技巧 word
    assert
    游戏摘录
    游戏类链接 财富导图
    读书笔记之C# delegate
    c# socket传输struct类型
    关于wcf中一些重要词语解释
    asp.net CROSS-PAGE POSTING
  • 原文地址:https://www.cnblogs.com/arcer/p/3830815.html
Copyright © 2011-2022 走看看