今天在做插入输入的时候
平均一秒插入5W数据到mysql数据库,但是在插入到100多W条时就会暴错
设置了大小还是会暴错而且在以前做的东西中导出数据比较多的时候一次性取出几十W条 也会抱类似的
错误,有没有什么好点的办法来修改这个问题
尤其是查询的时候 如何优化?望高手指点.

解决方案 »

  1.   

    设置 -Xmx1024M -Xms1024M -XX:MaxPermSize=512m 改大点,我测试5W好像问题不大推出5W也可以.你这几十W的数据是否要考虑分段插入,每段都要及时对内存进行清理回收。一次取几十万数据这个没1000M内存好像达不到吧,是否考虑导出到数据文件的方式的物理增量更新。
      

  2.   

    myeclipse是在底下的Server界面里,在配好的tomcat上右击选择config server connector-》myeclipse tomcat xx-》jdk-》optional java VM arguments中设置 -Xmx1024M -Xms1024M -XX:MaxPermSize=512m-Xmx1024M -Xms1024M这两项更具你实际内存大小相应改,但是你一次导出几十万,除非你有大内存开个5G给JVM
      

  3.   

    如果用myeclipse 的话,可以按3楼的改,还可以在:
    myeclipse.ini中改:
    ...
    -vmargs
    -Xms1024m
    -Xmx1024m
    -XX:PermSize=512m
    -XX:MaxPermSize=512m
    -XX:ReservedCodeCacheSize=64m
      

  4.   

    可以分段插入啊,比如一次插1000条,清下batch再接着插