存储过程运行超慢解决一例 ---续

      晚上突然醒来,睡不着觉,想起这几天的数据库问题,越是睡不着。为什么一定要改为Rule才会快呢?是不是表没有作分析造成的呢?打开电脑,连回公司。察看状态,发现确实所有表都没有被分析过。应该就是这个原因。立刻选中一个最常用的表作分析,这个表很大,有一亿多笔数据,选择 Estimate, Sample 取 33,估计要几个小时才能完成,睡觉。
      第二天上班,赶快察看结果,失败,报ora-01555错误。正好一个从台北过来的 DBA高手拜访,赶快show我的问题给他看,他的分析和我一样,应该是表没有分析过造成。建议将Sample改为1看看。很快,分析完成。测试了一下之前需要加\*+rule*|的SQL,改为\*+all_rows*\,很快,表示我的猜想是正确的,赶快对所有table都作一次分析。
posted @ 2007-10-19 16:31  土鸟  阅读(442)  评论(0编辑  收藏  举报