热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

不借助第三方工具,查看SQL的执行计划

不借助第三方工具,查看SQL的执行计划SQL>connectsysassysdba--创建执行计划使用的表SQL>@?\rdbms\admin\utlxplan通过以下方法可以把Autotrace的权限授予每个用户,如果你需要限制Autotrace权限,可以...Sy

不借助第三方工具,查看SQL的执行计划
 
SQL> connect sys as sysdba
--创建执行计划使用的表
SQL> @?\rdbms\admin\utlxplan 
通过以下方法可以把Autotrace的权限授予每个用户,如果你需要限制Autotrace权限,可以把对public的授权改为对特定user的授权。
  www.2cto.com  
1、把对plan_table表所有权限赋给public角色
SQL> grant all on plan_table to public ;
2、创建一个角色plustrace
SQL> create role plustrace;
3、授权给plustrace角色
SQL> grant select on v_$sesstat to plustrace;
SQL> grant select on v_$statname to plustrace;
SQL> grant select on v_$session to plustrace;
 
4、把角色plstrace授权给DBA
SQL> grant plustrace to dba with admin option;
5、DBA把权限授予public
SQL> grant plustrace to public;
这样用户可以在sqlplus中设置如下的选项
SET AUTOTRACE OFF ---------------- 不生成AUTOTRACE 报告,这是缺省模式
SET AUTOTRACE ON EXPLAIN ------ AUTOTRACE只显示优化器执行路径报告
SET AUTOTRACE ON STATISTICS -- 只显示执行统计信息
SET AUTOTRACE ON ----------------- 包含执行计划和统计信息
SET AUTOTRACE TRACEONLY ------ 同set autotrace on,但是不显示查询输出 
 
  www.2cto.com  
SQL>SET autotrace on;
SQL>select * from emp;
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
---------- ---------- --------- ---------- ---------- ---------- ---------- ----------
7369 SMITH CLERK 7902 17-12月-80 1171.28 20
7499 ALLEN SALESMAN 7698 20-2月 -81 2342.56 300 30
7521 WARD SALESMAN 7698 22-2月 -81 1830.13 500 30
7566 JONES MANAGER 7839 02-4月 -81 4355.7 20
7654 MARTIN SALESMAN 7698 28-9月 -81 1830.13 1400 30
7698 BLAKE MANAGER 7839 01-5月 -81 4172.69 30
7782 CLARK MANAGER 7839 09-6月 -81 3587.05 10
7788 SCOTT ANALYST 7566 19-4月 -87 3000 20
7839 KING PRESIDENT 17-11月-81 7320.5 10
7844 TURNER SALESMAN 7698 08-9月 -81 2196.15 0 30
7876 ADAMS CLERK 7788 23-5月 -87 1100 20
7900 JAMES CLERK 7698 03-12月-81 1390.9 30
7902 FORD ANALYST 7566 03-12月-81 4392.3 20
7934 MILLER CLERK 7782 23-1月 -82 1903.33 10
  www.2cto.com  
已选择14行。
Execution Plan
----------------------------------------------------------
0 SELECT STATEMENT Optimizer=CHOOSE
1 0 TABLE ACCESS (FULL) OF 'EMP'
 
 
作者 郭学鹏

推荐阅读
  • PHP混淆代码的破解与理解
    本文探讨了PHP中常见的代码混淆技术及其破解方法,包括简单的变量名混淆和更复杂的加密技术。 ... [详细]
  • 提升工作效率:掌握15个键盘快捷键
    在日常工作中,熟练掌握计算机操作技巧能够显著提升工作效率。本文将介绍15个常用的键盘快捷键,帮助用户更加高效地完成工作任务。 ... [详细]
  • 如何处理PHP缺少扩展的问题
    本文将详细介绍如何解决PHP环境中缺少扩展的问题,包括检查当前环境、修改配置文件以及验证修改是否生效的具体步骤,帮助开发者更好地管理和使用PHP扩展。 ... [详细]
  • 本文详细介绍了Android系统的四层架构,包括应用程序层、应用框架层、库与Android运行时层以及Linux内核层,并提供了如何关闭Android系统的步骤。 ... [详细]
  • 探讨密码安全的重要性
    近期,多家知名网站如CSDN、人人网、多玩、开心网等的数据库相继被泄露,其中大量用户的账户密码因明文存储而暴露无遗。本文将探讨黑客获取密码的常见手段,网站如何安全存储用户信息,以及用户应如何保护自己的密码。 ... [详细]
  • spring(22)JdbcTemplate
    2019独角兽企业重金招聘Python工程师标准###1.导入jar包,必须jar包:c3p0、mysql-connector、beans、con ... [详细]
  • 本文详细介绍了 `org.apache.hadoop.hdfs.server.namenode.FSNamesystem.shouldUseDelegationTokens()` 方法的用途和实际应用场景,并提供了多个代码示例以帮助开发者更好地理解和使用该方法。 ... [详细]
  • 在Java开发中,保护代码安全是一个重要的课题。由于Java字节码容易被反编译,因此使用代码混淆工具如ProGuard变得尤为重要。本文将详细介绍如何使用ProGuard进行代码混淆,以及其基本原理和常见问题。 ... [详细]
  • 本文介绍如何通过参数化查询来防止SQL注入攻击,确保数据库的安全性。示例代码展示了在C#中使用参数化查询添加学生信息的方法。 ... [详细]
  • 开发笔记:[14]SQL 别名
    开发笔记:[14]SQL 别名 ... [详细]
  • oracle 对硬件环境要求,Oracle 10G数据库软硬件环境的要求 ... [详细]
  • 本文介绍了GitHub上的一些Python开源项目,特别是IM(即时通讯)技术的应用。通过Sealtalk项目,探讨了如何利用开源SDK提升开发效率。 ... [详细]
  • Redis:缓存与内存数据库详解
    本文介绍了数据库的基本分类,重点探讨了关系型与非关系型数据库的区别,并详细解析了Redis作为非关系型数据库的特点、工作模式、优点及持久化机制。 ... [详细]
  • Linux环境下MySQL的安装与配置
    本文详细介绍了在Linux系统上安装和配置MySQL的步骤,包括安装前的准备工作、下载和解压安装包、初始化数据库、配置文件编辑、启动服务以及设置开机自启动等。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中安装 Python 3.7 的步骤,包括编译工具的安装、Python 3.7 源码的下载与编译、软链接的创建以及常见错误的处理方法。 ... [详细]
author-avatar
兔斯基小兔子_988
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有