ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 一条sql语句优化不出来, 哭了一鼻子

一条sql语句优化不出来, 哭了一鼻子

原创 Linux操作系统 作者:zhanglei_itput 时间:2009-07-29 17:17:47 0 删除 编辑

    周一上班,系统切换后的第一天,有一条sql语句死活优化不出来,在9i上明明是几秒钟,但是到了10g的机器,就是select不出来,占用cpu 100%,气死我了。

    其实本来就是一个技术工作,但是在领导们的各种各样的压力下,事情又升华成了一个重大事件,我就像是被围攻的一只鸟,n多个人在我头上说,应该这样做,应该那样做,应该搭建备用环境,明天之前必须出来,应该调整数据库参数。。。。哎。。。。受不了了,终于爆发了,在给一个高手的求助电话中,忍不住了,哭鼻子了。。。(丢人)。

   我记得eygle跟我说过:有压力才有动力。是啊,没有压力哪里来的动力,没有困难,又怎么能够成长。于是,我静下心来,想想自己的问题究竟出在哪里。首先我为了调整一条sql语句,草率的修改了数据库中的隐含参数,这样做导致了一条已知的sql优化,但是未知数的sql语句出现了问题,我的方向错了。于是,我把所有的参数全部还原,让前面所有的任务都过去了,就差最后一条sql语句,然后再集中精力研究最后一条sql语句,eygle帮忙看了看db的awr报告,和有问题sql语句的explain,发现sql语句的执行计划完全错了,他走了一个nested loop,而且是很大的大表,在专家的建议下,加了一个hints /*+ ordered use_hash(a b) */,强制走 hash join,结果执行计划果真变了,几十s出来了,啊,我终于松了一口气。

    通过这件事情,发现了自己的很多缺点:
    1.  承受压力的能力很差,情绪很受别人的影响
    2.  做事情还是不够稳重,有事很草率,其实静下心来,仔细想想,定位好方向。
    3.  基础知识不牢固,有些东西总是模模糊糊,似乎知道,又似乎不知道,用到的时候,才觉得有些无从下手。

    在这里,感谢eygle的帮助,再次表示感谢。

 

leiz随笔

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

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

注册时间:2009-02-10

  • 博文量
    400
  • 访问量
    1108696