1个多小时了,RBS都扩展到1300M了,时间都浪费在EXTENT上了:(

解决方案 »

  1.   

    insert /*+ append */ into ....
      

  2.   

    2百万条记录 不可以分开 insert 吗
    把表改成 nologging
      

  3.   

    不好分开,表改成nologging可行吗?没有试过:)insert /*+ append */ into ....是什么意思啊?
      

  4.   

    直接 insert 到表的 HWM 后面 加快insert的速度 
    nologging也只是不写redo   
    rollback segment 还是要写的
      

  5.   

    l2g32003(leeshow) 大侠
    怎么直接 insert 到表的 HWM 后面 ?不会啊:(
      

  6.   

    方案1、数据库连接时可以设定AutoCommit = TRUE,即表示自动提交。
    方案2、如果可以分开的话,比如:每插入10000条提交(commit)一次。
    方案3、单独指定一个大的回退段给它,这样不会影响到其它连接。
      

  7.   

    2万条记录,你可以控制一下,比如每两千条就commit一下。具体多少条commit你可以根据实际情况定。想不写会滚段,好像不行。
      

  8.   

    insert /*+ append nologging parallel*/ into ....select ....
    就这样,我用过,从5亿条到另外的表。
      

  9.   

    采用以下方法:ALTER TABLE tab NOLOGGING;           不写日志
    ALTER SESSION ENABLE PARALLEL DML;   可进行动态并行处理
    INSERT /*+ PARALLEL(tab ,4) */ INTO tab 
           SELECT /*+ PARALLEL(t_emp,8) */ * FROM t_emp;COMMIT;
      

  10.   

    ALTER TABLE tab NOLOGGING; 不写日志写rbs
    多次提交是个好办法,否则rbs会撑死了.
    ALTER SESSION ENABLE PARALLEL DML; 可以试试.
      

  11.   


    insert /*+ append nologging parallel*/ into ....select ....INSERT /*+ PARALLEL(tab ,4) */ INTO tab 
           SELECT /*+ PARALLEL(t_emp,8) */ * FROM t_emp;
    我只会在/*   */里用索引,呵呵,不知道上面的到底是什么意思啊。哪位老大给解释一下啊
      

  12.   

    INSERT /*+ PARALLEL(tab ,4) */ INTO tab 
           SELECT /*+ PARALLEL(t_emp,8) */ * FROM t_emp;
    中的/*+ PARALLEL(tab ,4) */语句表示对tab表进行并行处理,并行度为4,即同时4个线程参与相关运算并行度的大小主要由CPU的个数,磁盘阵列模式决定。
    最佳并行度为CPU个数+1
      

  13.   

    用并行是不是要使用ORACLE并行服务器模式啊,我装的ORACLE没有使用OPS模式啊
      

  14.   

    不是 一般多个cpu使用并行 一个cpu有时用并行效率也可提高