Erlang release,为./bin/XXXXX start-name设置节点名称nonode@nohost

Erlang release,为./bin/XXXXX start-name设置节点名称nonode@nohost,erlang,mnesia,relx,Erlang,Mnesia,Relx,我有一个现有的mnesia数据库,现在我开始使用适当的erlang版本。我使用relx 但是,问题是我需要与现有的mnesia数据库兼容,当创建该数据库时,节点名称是nonode@nohost. 我已经看到,对于mnesia,节点名不仅仅是目录名的一部分,也就是说,如果不使用备份和恢复以及一些处理,它是无法更改的 我可以使用 bin/XXXX控制台-名称nonode@nohost 找到了数据库。但是,我想使用 bin/XXXX开始-名称nonode@nohost 但是-名称被忽略了。当我附加并执

我有一个现有的mnesia数据库,现在我开始使用适当的erlang版本。我使用relx

但是,问题是我需要与现有的mnesia数据库兼容,当创建该数据库时,节点名称是nonode@nohost. 我已经看到,对于mnesia,节点名不仅仅是目录名的一部分,也就是说,如果不使用备份和恢复以及一些处理,它是无法更改的

我可以使用

bin/XXXX控制台-名称nonode@nohost

找到了数据库。但是,我想使用

bin/XXXX开始-名称nonode@nohost

但是-名称被忽略了。当我附加并执行节点操作时,会得到其他内容

我还找到了vm.args文件,并将节点名称更改为nonode@nohost好了,但是我得到了

{error_logger,{{2015,2,14},{13,25,17},节点名无效:~p~n,['nonode@nohost']}


因此,似乎有人真的确定了这个名字不能被使用nonode@nohost:-是我唯一可以这样做的选项:

通常erlang命令行参数被放置在名为vm.args的文件中。您可以在发布目录中找到它。 此文件的每一行都是vm选项,因此在您的情况下,您需要放置:

-名字nonode@nohost


查看此文件。

好的,似乎没有好的解决方案。我将从旧数据库中导出数据,并将数据导入到使用正确节点名创建的新数据库中。

正如原始海报中已经解释的那样,这不起作用。它导致一个无效的节点名错误。哦,阅读此问题时没有清醒,对此表示抱歉。史蒂夫是对的,答案是错的。