品悟性能优化 第三章读书笔记

1. 罗敏老师的书里面第三章讲了几个Oracle的性能检测调优的工具,其实很长时间以前我一直也知道,但是自己一直认为获取trace以及进行查看是一件非常复杂和困难的事情, 以至于一直闭着眼睛不去学习。

其实今年初工作中红遇到的一个大问题 如果先看过这本书的话 明显可以更快的定位到问题,而不是苦苦的等同事返回工作岗位再发现问题根源。

1. sql_trace

可以对不同的session以及系统级别创建sql_trace的跟踪,但是因为系统实例级别的话 会严重影响操作系统的性能 而且会产生大量的日志文件,造成存储子系统的压力, 所以不建议使用系统级别的sql_trace

可以先查看一下比较占用系统的session 然后针对session创建跟踪选项

exec dbms_system.set_sql_trace_in_session(session_id,serial_id,true)

然后查找trace文件 使用tkprof命令转换为较为容易理解的命令

tkprof tracefile.trc outputfile .txt sys=no sort=execpu print=3

2. 执行计划,最简单的方式是plsql使用F5就可以进行查看,如果没有客户端的话可以使用sqlplus来进行查看

1. 创建plan_table表

@.../rdbms/admin/utlxplan. 

explain for select * from tabletest;

然后10g的话采用

select  plan_table_output from table(dbms_xplan.dispaly());

3. autotrace

命令 set autotrace on

        set timing on

       select count(1) from tabletest;

如果执行查看执行计划和统计信息的话可以使用

set autotrace traceonly 的方式进行

 

其实书中第一章也讲了关于绑定变量的一些优化途径

就是如果无法实现绑定变量或者绑定变量的难度比较高时

可以通过修改系统参数

alter system set cursor_sharing='SIMILAR'

但是修改之后可能还有部分数据不准确的bug 所以不建议直接进行修改。

电子书应该是很早很早之前开发同事给我的 但是一直没有仔细看, 其实资料有很多,只是学习不到心里去。

 

posted @ 2017-12-11 23:03  济南小老虎  阅读(127)  评论(0编辑  收藏  举报