【问题标题】:Error occurred while installing Cassandra "Error occurred during initialization of VM Could not reserve enough space for 2097152KB object heap"安装 Cassandra 时发生错误“VM 初始化期间发生错误无法为 2097152KB 对象堆保留足够的空间”
【发布时间】:2021-10-27 06:36:08
【问题描述】:

我试图通过命令行运行 cassandra

{C:\Program Files (x86)\apache-cassandra-3.11.11\bin>cassandra}

警告! Powershell 脚本执行不可用。 请使用'powershell Set-ExecutionPolicy Unrestricted' 在此用户帐户上运行功能齐全的 cassandra 这个平台上的功能。 从旧的启动选项开始 启动 Cassandra 服务器 初始化虚拟机时出错 无法为 2097152KB 对象堆保留足够的空间

内存 - 16 GB

由于上述问题,我尝试使用运行时参数 -Xms3G 运行 java,但 cassandra 仍然没有运行。

请求帮助,如何解决这个问题?如果需要任何其他详细信息,请告诉我。

【问题讨论】:

    标签: cmd cassandra jvm heap-memory


    【解决方案1】:

    堆大小

    此错误表明您的计算机上没有足够的可用内存:

    Error occurred during initialization of VM
    Could not reserve enough space for object heap
    

    关闭不需要释放一些内存的其他应用程序,然后尝试通过在 conf 的“堆设置”部分取消注释以下行,以更保守的分配 1GB 的最大堆大小和 400MB 的 NewGen 来启动 Cassandra /jvm.options:

    -Xms1G
    -Xmx1G
    -Xmn400M
    

    Powershell 权限

    您需要向运行 Cassandra 脚本的 Windows 帐户授予 Powershell 权限。

    您可以通过以下方式向计算机上的所有 Windows 帐户授予权限:

    C:\> powershell Set-ExecutionPolicy Unrestricted
    

    警告:您需要以管理员身份运行命令提示符才能运行上述命令。

    作为替代方案,您可以仅为当前用户授予不受限制的访问权限:

    C:\> powershell Set-ExecutionPolicy -Scope CurrentUser Unrestricted
    

    Windows 支持

    我想让您知道,Cassandra 3.11 对 Windows 的支持非常有限,并且由于操作系统的限制,有几个已知问题无法修复。

    此外,由于缺乏维护人员和测试 (CASSANDRA-16171),Cassandra 4.0 中完全放弃了 Windows 支持。

    作为一种解决方法,我们推荐以下方法:

    如果您只是想以 Cassandra 作为后端来构建应用程序,Astra DB 提供免费套餐,让您只需点击几下即可启动 Cassandra 集群,而无需信用卡。干杯!

    【讨论】:

    • 感谢您的澄清。方法很清楚。
    • 谢谢,很有用。实际上,我已经接受了您的建议,将 astra DB 用于我的项目。
    • 我已经给出了接受它的回应,因为我的声誉(score-11)很低,所以这里没有反映。谢谢。
    猜你喜欢
    • 2013-01-05
    • 1970-01-01
    • 2019-02-24
    • 2021-06-07
    • 1970-01-01
    • 2013-06-22
    • 2020-01-04
    • 2017-08-19
    • 2019-10-14
    相关资源
    最近更新 更多