oracle如何查看执行计划

Oracle Database,又名Oracle RDBMS,或简称Oracle,是甲骨文公司的一款关系数据库管理系统。学习Oracle Database不是一朝一夕就能熟练掌握的,对想学Oracle Database的童鞋,耐心和细心是最重要的,本文就来讲讲在Oracle Database里如何查看执行计划。接着往下看:

操作方法

  • 01

    打开Oracle Database软件后进入软件数据库主界面,在PL/SQL下按F5查看执行计划,在这里面可以看到基数、优化器、耗费等基本信息 如图

  • 02

    在SQL*PLUS,PL/SQL的命令窗口下执行下面步骤 : SQL>EXPLAIN PLAN FOR SELECT * FROM SCOTT.EMP; --要解析的SQL脚本 SQL>SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY); 如图

  • 03

    完成以上步骤后还需要在SQL*PLUS下输入代码执行命令: SQL>SET TIMING ON             --控制显示执行时间统计数据 SQL>SET AUTOTRACE ON EXPLAIN       --这样设置包含执行计划、脚本数据输出,没有统计信息 如图

  • 04

    接着我们输入第二段代码: SQL>执行需要查看执行计划的SQL语句 SQL>SET AUTOTRACE OFF           --不生成AUTOTRACE报告,这是缺省模式

  • 05

    然后是第三段 SQL> SET AUTOTRACE ON           --这样设置包含执行计划、统计信息、以及脚本数据输出 SQL>执行需要查看执行计划的SQL语句 SQL>SET AUTOTRACE OFF

  • 06

    第四段代码: SQL> SET AUTOTRACE TRACEONLY      --这样设置会有执行计划、统计信息,不会有脚本数据输出

  • 07

    最后输入第5段代码: SQL>执行需要查看执行计划的SQL语句 SQL>SET AUTOTRACE TRACEONLY STAT --这样设置只包含有统计信息 SQL>执行需要查看执行计划的SQL语句

  • 08

    需要注意的是:在Oracle Database中,PL/SQL Developer 工具并不完全支持所有的SQL*Plus命令,如果执行“SET AUTOTRACE ON”命令就会报错,出现接下来的情况: SQL> SET AUTOTRACE ON; Cannot SET AUTOTRAC

  • 09

    PL/SQL DEVELOPER工具里面执行上面脚本过后,我们是看不到相关信息的,这时我们可以通过输入脚本代码查询执行过的信息,代码如下: SELECT T.VALUE || '/' || LOWER(RTRIM(I.INSTANCE, CHR(0))) || '_ora_' || P.SPID || '.trc' TRACE_FILE_NAME FROM ( SELECT P.SPID FROM V$MYSTAT M, V$SESSION S, V$PROCESS P WHERE M.STATISTIC# =1 AND S.SID = M.SID AND P.ADDR = S.PADDR ) P, ( SELECT T.INSTANCE FROM V$THREAD T, V$PARAMETER V WHERE V.NAME ='thread' AND (V.VALUE = 0 OR T.THREAD# = TO_NUMBER(V.VALUE)) ) I, (SELECT VALUE FROM V$PARAMETER WHERE NAME='user_dump_dest') T 如图所示:

  • 10

    我们通过Oracle Database,查看执行计划后,通常要以文本的形式保存下来,可以输入命令:tkprof D:\ORACLE\PRODUCT\10.2.0\DB_1\RDBMS\TRACE/wgods_ora_3940.trc h:\out.txtoutputfile explain=etl/etl 执行 如图

  • 11

    执行上面命令后,就可以查看生成的文本文件了如图

  • 12

    以上就是如何用Oracle Database,查看执行计划的步骤,需要注意的是PL/SQL Developer 工具并不完全支持所有的SQL*Plus命令,执行SET AUTOTRACE ON 就如此,在PL/SQL Developer工具下执行此命令会报错。

(0)

相关推荐

  • 怎样通过PLSQL查看sql的执行计划

    PL/SQL Developer是一款专门为ORACLE开发的数据库集成开发环境,在ORACLE数据库的应用开发过程中应用最为广泛. 在数据库开发过程中,必然会遇到SQL的效率问题,而解决效率问题的重 ...

  • SQL SERVER如何应用执行计划

    SQL SERVER的执行计划功能可以帮助我们分析SQL语句的效率.但是,SQL SERVER默认是不开启执行计划的.下面小编就教大家如何开启与应用SQL SERVER的执行计划功能. 操作方法 01 ...

  • 注册表取消启动时执行计划任务

    当Windows启动后,计划任务会自动被执行.通常情况下并不需要此功能,可以将此功能关闭. 运行注册表,展开HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurr ...

  • oracle数据库查看表空间使用率

    oracle数据库查看表空间使用率和设置表空间大小及自动增长的方法. 操作方法 01 查看表空间名称.大小.使用大小.剩余大小和使用率: SELECT a.tablespace_name " ...

  • oracle如何查看表空间

    Oracle数据库是一款非常好用的关系型数据库,oracle的数据是以表空间来维护和存放的,在表空间中包含oracle的数据.结构等信息,如何查看表空间信息呢?本文针对此内容进行说明. 操作方法 01 ...

  • Linux系统中查看执行中的进程占用内存量的方法

    Linux中查看某个进程占用内存的情况,执行如下命令即可,将其中的[pid]替换成相应进程的PID号: 复制代码 代码如下: cat /proc/[pid]/status 说明/proc/[pid]/ ...

  • oracle数据库查看并修改最大连接数

    作为一个DBA,维护数据库的时候,有时候会遇到数据库连接数够,客户端连接间歇性失败,会报错ORA-12519 TNS:no appropriate service handler found,此时我们 ...

  • oracle如何查看数据文件和控制文件存放位置

    在oracle的日常维护中,要经常查看oracle数据库的数据文件及控制文件存放位置, 以便能查看磁盘占用情况,避免对数据库造成性能困扰. 如何快速的查看oracle数据文件及控制文件的位置呢? 下面 ...

  • PLSQL DEVELOPER 使用技巧

    介绍下PLSQL DEVELOPER一些实用的使用小技巧:记住登陆密码,默认选择My Objects,关键字大写,window list菜单自动调出 ,查看执行计划. 操作方法 01 记住登陆密码. ...