HP-UX B.11.23,Oracle 10.2.0.4企业版,A机与B机配置成集群,以RAC的方式同时运行在A机和B机上。用PLSQL Developer执行存储过程DB link加载数据,每次执行大概3小时左右,但却每隔两小时左右断一次,导致数据加载失败。问过oracle安装人员,没有超时设置。
问过网管,防火墙没有特殊设置。怎么解决啊?

解决方案 »

  1.   

    就这么小段:
          INSERT INTO A_RCVED_PL_FLOW(RCVED_PL_ID,RCVED_AMT_ID,ITEM_CODE,PL_AMT,ORG_NO)
          SELECT RCVED_PL_ID,RCVED_AMT_ID,ITEM_CODE,PL_AMT,ORG_NO
          FROM A_RCVED_PL_FLOW@DB_EPM A
          WHERE  EXISTS (SELECT 1 FROM A_RCVED_FLOW B WHERE A.RCVED_AMT_ID=B.RCVED_AMT_ID AND B.ORG_NO LIKE V_SUB_DEPT)
          AND A.ORG_NO LIKE V_SUB_DEPT;
          COMMIT;记录数大概2400万
      

  2.   

    试试 insert /*+ append*/ 吧
      

  3.   

    断的时候,在plsql developer上提示什么错误信息?
      

  4.   

    日志上也没什么错误信息我查了IDLE_TIME和CONNECT_TIME都是UNLIMITED。会不会是HP-UX B.11.23有连接时间限制啊。
      

  5.   

    网络是否可靠?这么大量的行最好作个判断,每一小段如10000行Commit一下,否则Undo表空间会涨得很大,你可以看一直Undo表空间的容量和其autoextend 设置.
      

  6.   

    2400万,如果是远程服务器的话,这个操作应该是要被禁止的.你可以expdp,gzip,ftp,impdp很快的,而且安全,性能又好,不要图省事.
      

  7.   

    你用物化视图的方式来刷新吧,在源数据库上建立物化视图日志create materialized view mv_test
    BUILD IMMEDIATE
    refresh force on commit
    as select * from emp;
    create materialized view log on emp;
    这样会实时刷新,同样,你可以设置成非实时刷新,可以根据物化视图日志中的更新类型(insert, update, delete)来决定你自己的刷新策略
      

  8.   

    检查下日志看看怎么回事,或者直接使用  sqlplus 执行,不用  pl/sql