sqlplus中显示sql执行计划和统计信息
2013-06-26 23:59
387 查看
31 ,32 , 33 ,34 keywords : oracle storage structure
最详细讲解:
1: doc 1 logical storage structure
2: doc 2 physical storage structure
打开oracle sqlplus trace 的方法:
打开后可以看到执行过程中的统计信息:
首先用dba登录:
然后授权给HR;
报了以上错误: 以上错误解决方法:
1: 用oracle dba用户登录
2:执行如下授权命令:
授权完成后用oracle 普通用户HR登录: 打开 autotrace on 即可: 就能看到执行计划和 统计信息了。
最详细讲解:
1: doc 1 logical storage structure
2: doc 2 physical storage structure
打开oracle sqlplus trace 的方法:
打开后可以看到执行过程中的统计信息:
首先用dba登录:
drop role plustrace; Role dropped. create role plustrace; Role created. . grant plustrace to dba with admin option; Grant succeeded.
然后授权给HR;
GRANT PLUSTRACE TO HR; Grant succeeded.然后用HR用户登录:
SQL> conn HR/HR 已连接。 SQL> set auto trace SP2-0158: 未知的 SET autocommit 选项 "trace" 用法: SET AUTO[COMMIT] { OFF | ON | IMM[EDIATE] | n } SQL> set autot trace SP2-0618: 无法找到会话标识符。启用检查 PLUSTRACE 角色 SP2-0611: 启用 STATISTICS 报告时出错
报了以上错误: 以上错误解决方法:
1: 用oracle dba用户登录
2:执行如下授权命令:
SQL> conn /as sysdba 已连接。 SQL> grant select on v_$sesstat to plustrace; 授权成功。 SQL> grant select on v_$statname to plustrace; 授权成功。 SQL> grant select on v_$mystat to plustrace; 授权成功。 SQL> grant plustrace to dba with admin option; 授权成功。 SQL> grant plustrace to HR; 授权成功。 SQL> exit
授权完成后用oracle 普通用户HR登录: 打开 autotrace on 即可: 就能看到执行计划和 统计信息了。
SQL> conn HR/HR 已连接。 SQL> select count(*) from employees; COUNT(*) ---------- 107 SQL> set autotrace on SQL> select count(*) from employees; COUNT(*) ---------- 107 执行计划 ---------------------------------------------------------- Plan hash value: 3580537945 ------------------------------------------------------------------------- | Id | Operation | Name | Rows | Cost (%CPU)| Time | ------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 1 (0)| 00:00:01 | | 1 | SORT AGGREGATE | | 1 | | | | 2 | INDEX FULL SCAN| EMP_EMAIL_UK | 107 | 1 (0)| 00:00:01 | ------------------------------------------------------------------------- 统计信息 ---------------------------------------------------------- 0 recursive calls 0 db block gets 1 consistent gets 0 physical reads 0 redo size 420 bytes sent via SQL*Net to client 416 bytes received via SQL*Net from client 2 SQL*Net roundtrips to/from client 0 sorts (memory) 0 sorts (disk) 1 rows processed
相关文章推荐
- sqlplus中显示sql执行计划和统计信息
- 如何在sqlplus中查看oracle数据库sql语句执行计划,执行时间和统计信息
- 从一个SQL使用了不理想的执行计划说开,浅谈执行计划如何估算cache信息的影响及系统统计信息的收集等(2010-10-15)
- oracle查看sql执行计划和统计信息
- sqlplus得到执行计划的统计信息
- oracle查看sql执行计划和统计信息
- 在Oracle的SQL*PLUS中启用AutoTrace查看SQL执行计划和统计信息
- SQL执行计划及统计信息相关视图
- 一次ORA-4030问题诊断及解决【解决思路不错,说明了对象的统计信息与优化器的优化操作(即选择执行一个SQL语句在该优化参数环境下最佳的执行计划)间的关系】
- 页面显示SQL执行的所有状态信息
- oracle表的统计信息完全正确,执行计划无故改变。原厂人员如是回复
- 当统计信息不准确时,CBO可能产生错误的执行计划,并在10053 trace中找到CBO出错的位置示例
- ORACLE PL/SQL Developer工具执行计划无COST和cardinality,bytes等列值显示问题
- 统计信息不准导致执行计划出错跑不出结果,优化后只要1分钟
- Oracle CBO 统计信息的收集与执行计划的选择
- 利用DBMS_STATS包修改统计信息,欺骗优化器,生成糟糕的执行计划
- SQL 2005 如何统计sql执行信息
- java web项目,配置log4j显示日志和执行sql信息
- Atitit sql计划任务与查询优化器--统计信息模块