Oracle SQL执行计划

  | 转载时请务必以超链接形式标明文章原文链接和作者信息及本版权声明。
原文链接:http://www.liaojl.com/archives/2008/06/oracle-sql.html

执行计划脚本安装:

以SYSTEM或者SYS用户执行脚本,建立PLAN_TABLE表,如下:

SQL> @?/rdbms/admin/utlxplan.sql
SQL> create public synonym plan_table for plan_table;
SQL> grant all on plan_table to public; 

以SYS用户执行脚本,建立PLUSTRACE,并赋予任何用户执行权限,如下:

SQL> @?/sqlplus/admin/plustrce
SQL> grant plustrace to public ;

将语句执行计划存储到PLAN_TABLE表中:

explain plan for select dept from employee;

执行下面语句就可以查看该语句执行的执行计划:

SELECT OPERATION,OPTIONS,OBJECT_NAME,OBJECT_TYPE,ID,PARENT_ID
FROM PLAN_TABLE 
WHERE STATEMENT_ID='employee' 
ORDER BY Id;

在SQLPLUS中显示执行计划及统计信息:

SQL>set autotrace on 

只显示执行计划,虽然不显示查询出来的数据,但是数据还是会传输到客户端:

SQL>set autotrace traceonly

只显示执行计划:

SQL> set autotrace traceonly explain

Leave a comment

Archives

Creative Commons License
This blog is licensed under a Creative Commons License.