楼主不把用的SQL帖出来,怎么知道写的SQL能不能优化?最好还说说大概的表结构之类的。

解决方案 »

  1.   

    你这个问题问得太大
    让人不知道该回答什么。不过可以提供你一点,对于数据库方面的优化,一般来说:
    首先进行的应该是应用程序的优化
    比如你程序里面用的sql语句,写得是否合适,有的一个功能可能有很多种
    写法,但是各种写法的性能不一样的。如果能用存储过程的尽量用存储过程。其次,如果你的表的数据量比较大的话比如说上百万、千万记录则一定要建
    索引和分区。最后才是调整数据库参数
      

  2.   

    如果楼主怀疑是数据库方面的原因,可以把“具体列车时刻查询”用到的SQL 在SQL PLUS中执行,分析--增加或减少条件,比较性能差异。这样调试起来会有效一些
      

  3.   

    我今天刚培训了oracle数据库,今晚讲到数据库调优,
    总结了几点:首先最影响数据库性能的事io操作,尽量减少io操作,如果数据量很大,不可避免的话,可以在物理存储上采用不同的disk来存储data file 和redo file,另外,如果数据库设置为归档模式的话,速度会相对比较慢,所以可以把归档属性关掉。
      另一方面,调整shared library buffer,data dict,data cache,redo cache内存的大小,达到一个理想的条件。
    最后,是编成层次的,尽量少建立排序索引,变union操作为union all操作,避免全表检索,语句中少用in操作。
    嗬嗬,现在只能想起这么多。
      

  4.   

    这个帽子有点大了。oracle优化的内容好多啊。
      

  5.   

    楼主不妨把具体查询列车的sql语句手工在数据库中执行看看毫时多少,以确定是数据处理慢还是应用对查询到结果处理的慢,先确定问题出在哪一侧,然后再寻找解决办法
      

  6.   

    这样.你在系统高峰期先做一个statspack.帖上来.看看到底慢在哪里.