ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 《深入解析Oracle》第十章,性能诊断与SQL优化

《深入解析Oracle》第十章,性能诊断与SQL优化

原创 Linux操作系统 作者:louloueva 时间:2009-04-22 22:53:02 0 删除 编辑

作为最终章,难度上还不算很深
因为很多内容,个人之前又看过了 ^_^

本章主要介绍了如何利用Oracle部分功能进行SQL分析
比如AUTOTRACE,SQL执行计划分析
DBMS_XPLAN,类似于AUTOTRACE功能的系统包
利用V$SQLTEXT,V$SESSION进行某会话SQL的查询
SQL_TRACE功能,SQL跟踪功能
以及SQL_TRACE的增强版,10046事件
这些个人以前已经用了不少文字进行自学,也进行过一些试验
除了以上的内容,还有每章必含的实际案例分析

到此,十章的初步阅读计划算是落幕了
整体来说,在个人对Oracle进行过半年自学的基础上
此书阅读起来还算不太生涩难懂(比当初读《循序渐进Oracle》的效果好很多)
而书中还有不少地方,可以顺着文章提供的思路,进行更深入的研究
自己也在阅读的过程中,对Oracle相关知识有了新认识
比如今天在读书的过程中,发现了自己一直都在做的一件错事
在进行数据库查询的时候,个人经常不在意数字和字符之间的严格规范
比如某个表的主键是字符型,存放的内容为正整数形式的字符串
而自己写SQL的时候,经常因为懒而直接写上数字
这种写法,并不会对最终结果造成什么影响
因为Oracle会自动转换为一致类型进行查找(SqlServer也是如此)
可问题在于,个人只知道数据库会自动转换,但转换的方向自己并没有清楚
本章中的一个诊断示例,就提及了这种情况
此情况下,Oracle转换的不是我写的数值,而是表中相应字段存放的字符串
(将字符串转换为数值,进行查询条件比较)
这样一来,即便本字段有索引,Oracle也不会利用索引来进行查询,查询性能严重受损
不过……个人在公司开发库上测试,没有能实验出走索引的情况,无论是否用字符串……
但既然书上提到了这个问题,以后就得注意修正
今后还得多多深入Oracle原理,争取早日将自己所有不正确或是低效率的坏习惯改掉~

经过一个半月断断续续的初步阅读(用时超了计划50%……)
《深入解析Oracle》一书就要暂时离开我身边了(要出租)
而个人Oracle的系统学习可能又要暂时告一段落
因为听说马上工作量又要迎来一个高峰…………
另外,个人想要了解一下现有报表所涉及的全部相关规则,以便能提高自己的工作效率
这2个多月以来,只是熟悉了工作涉及到的报表开发的流程以及小部分业务规则
报表目前有100个左右,没有熟悉的地方还很多呢
而且,要想真正精通业务规则,还不能仅仅只关注报表本身涉及的
商务模块、业务模块等也应该一并了解,但个人目前还没有这个打算
即便真要全部了解……也要看自己是否认定这个公司可以长期发展再说
回头花大量精力去熟悉,结果一换地方全白看了……还是先把所有报表熟悉熟悉吧~

虽然下一步计划是应付即将到来的繁重的工作任务和熟悉报表规则
但Oracle不会搁置,毕竟平时工作是离不开Oracle的
而告一段落说的是有计划,有目的,系统地学习方式
平时有时间,有机会,还是会零散的去研究、深入
目前计划今年6月份去考OCA,预算5000
如果每门(共两门)都能一次通过,大概能节省50%
嗯……前途尚不平坦,个人还需努力 ^_^

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/556359/viewspace-591496/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-01-02

  • 博文量
    134
  • 访问量
    125510