上个周select count(*) from table1;  2秒内就可以出结果
从这个周开始,执行这条语句,要30多秒,
而且表里面的数据量只是稍微增加了一点,5%不到请问,可能什么原因导致这个问题的?

解决方案 »

  1.   

    频繁insert  delete 导致高水位线降不下来最简单办法 ,truncate
      

  2.   

    首先看是不是表里有索引,如果有索引,其实Oracle采用的是快速索引全扫描,即使高水位线也没有关系。所以,楼主建议你最好是先看下你这句话的执行计划。如果是采用快速索引扫描,则可能是因为索引块的碎片太多了,你重构下索引。如果采用的是全表扫描,则你按楼上说的,但是一定要记住备份好表数据。
      

  3.   

    还是那句话,建议楼主先看执行计划。如果采用的是索引全扫描则和高水位线没有关系,你就要重构索引。如果是全表扫描,则按楼上所说要先备份数据,然后truncate表。高水位线和全表扫描有关系,如果使用的是索引就没有关系。