2010-10-29 54 views
0

com.microsoft.sqlserver.jdbc.SQLServerException:系统内存不足。对大型结果集使用服务器端游标:Java堆空间。结果集大小:280,236,031。 JVM总内存大小:423,297,024。创建服务器端游标

我想从SQL中获取大数据集,并且出现以下错误。让我知道是否有人看到类似的东西,并愿意放弃一条线。

+0

什么是功能要求?将整个数据库复制到Java内存中可能会有更好的解决方案。例如,您可以按行/页面工作,也可以使用DB提供的导出工具。 – BalusC 2010-10-29 19:11:13

+0

我在R做分析。这是一个统计分析,我需要所有这些数据。 – user491663 2010-10-29 19:24:07

回答

0

您是否尝试增加可用于您的JVM的内存量?在命令行上,添加-Xmx1024m以将JVM内存占用量增加到1Gig。这不是一个长期的解决方案,但它可以解决您的直接问题。

+0

我没有直接使用Java。因此,除非我在JVM本身执行它,否则我无法指定它,我不相信我可以访问它。 – user491663 2010-10-29 20:07:22

+0

如果得到的数据内存不足并且无法更改,唯一的办法就是减少一次使用的内存量。有很多可能性值得思考,但取决于您想要做什么以及您使用的是什么软件。 – vickirk 2010-10-29 20:36:22

+0

我试着增加可用内存。但它仍然给我同样的错误。任何人知道为什么? – user491663 2010-10-29 21:58:59