【问题标题】:Oracle Sql Developer Heap Space Error, Protocol ErrorOracle Sql Developer 堆空间错误,协议错误
【发布时间】:2016-07-18 14:31:02
【问题描述】:

我在使用 Oracle SQL Developer 4.0.1.14 时遇到了一些奇怪的事情。

当我连接到一个特定的数据库并运行一个简单的select * from table1; 时,我得到了结果集。 (不管表中有多少记录,仍然会发生,但表中确实包含超过 170 个字段)

如果我再次尝试运行它,我会收到 java 堆空间错误。

如果我再次尝试运行它,它会开始抛出协议违规错误,每次连续运行都会出现不同编号的协议错误。

我从未在其他 oracle 数据库中遇到过这个问题,即使是通过相同的 SQL Developer 安装进行连接时也是如此。

我能够再次查询该表的唯一方法是重新连接到数据库。同一数据库的其他用户不会遇到此问题。有没有人遇到过这个问题?

【问题讨论】:

  • 考虑不要只为您的标题使用大写;因为对于使用互联网的许多人来说,大写转换为尖叫。
  • 如果您increase the JVM memory allocation,问题会消失吗?
  • 是的,修复了它。非常感谢。

标签: java oracle11g oracle-sqldeveloper


【解决方案1】:

您可以通过添加以下行来编辑 sqldeveloper.conf 并更改堆空间的大小:

 AddVMOption -Xmx4096M

【讨论】:

  • 这里是完整路径 C:\Users\{username}\AppData\Roaming\sqldeveloper\19.2.1\product.conf
  • 我试图将 .xlsx 文件中 1M 行的数据导入到表中,但出现错误:java heap space,添加此行后,仍然出现错误
【解决方案2】:

我知道为时已晚,可能会帮助其他人

在资源管理器中输入%appdata%

这将把你带到你的:

C:\Users\username\AppData\Roaming\

在我的例子中找到你的 sql 开发人员:

sqldeveloper

找到一个名为:product.conf

的文件

几乎在文件末尾换行:

AddVMOption -Xmx800m

进入:

AddVMOption -Xmx2048m

【讨论】:

    【解决方案3】:

    在我的情况下,我将“sqldeveloper.conf”中的堆大小增加到 3072M --> 3GB,但这并没有解决问题。

    AddVMOption -Xms1024M
    AddVMOption -Xmx3072M
    

    我发现在我尝试导入的 xlsx 文件中还有另一个结构不同的工作表。删除多余的不需要的工作表后,我可以成功导入。我正在使用MAC机器。
    最后说明:将 excel 文件转换为 csv 并导入后一个文件比导入 excel 文件的相同数据要快得多。

    【讨论】:

      猜你喜欢
      • 2014-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多