数据库要迁到另外一台机器,将原来的用户db_form所有对象exp,然后新数据库imp,结果同一条sql执行计划不同,请问是什么原因??

解决方案 »

  1.   

    那肯定是数据库性能方面的原因了,SGS,PGA的一些参数设置的不同导致的。
      

  2.   

    新机器的配置高,所以sga_max_size我设置了1024M,别人说以前的数据库好像只设置了一个sga_max_size=512m,其他默认我现在想把现有数据库的所有设置变得和以前一样,怎么做最简单啊
      

  3.   

    如果你要使用之前的配置的话,可以把initsid.ora 或者pfile拷贝过来修改下,但要修改相关参数比如你现在的数据库的路径要修改掉sga等参数可以保留。注意备份。
      

  4.   

    关键是现在的系统执行sql时变慢了,以前的数据库比这快
      

  5.   

    你可以找个dba来调优下。你自己也可以研究下性能调优的材料。可以搜索下之前的帖子,好多的。我也回过,不过都找不到了。
      

  6.   

    给你找了个自己研究下:
    http://topic.csdn.net/u/20081223/10/83C6245E-4052-415B-B0FE-2C7EF69B751C.html
      

  7.   

    现在用户并发后请求会阻塞很久,
    1 Fixed Size 454136
    2 Variable Size 268435456
    3 Database Buffers 268435456
    4 Redo Buffers 667648我想把这4个参数设置成这样,需要怎么写sql?
      

  8.   

    第一个是固定sga不可以修改的。
    第二个包括shared_pool_size等等好几个呢
    第二个DB_CACHE_SIZE 
    第四个log_buffer
    每个参数都可以用以下修改:
    alter system set shared_pool_size= 500m scope=spfile;
    建议楼主先研究研究再修改,要不会麻烦很大的。
      

  9.   

    sga_max_size设置了1024M,Database Buffers却是默认的大小,所以有问题。