0

我是 mongooseIM 的新手,我想创建一个新节点 ( mongooseim@myhostname.com),但是当我尝试运行此命令时:

bin/mongooseimctl add_to_cluster mongooseim@myhostname.com 

我收到以下错误:

错误:/usr/lib/mongooseim/Mnesia.mongooseim@localhost 已经存在。请在继续之前删除整个目录。

如何在不删除默认节点的情况下创建新节点mongooseim@localhost

我有以下配置:

在我的etc/vm.args配置文件中:

-sname mongooseim@myhostname.com

etc/ejabberd.cfg文件中:

{hosts, ["myhostname.com”] }.

我的 mongooseIM 目录:

/usr/lib/mongooseim
 bin
 erl_crash.dump
 erts-6.0
 etc
 lib
 log
 Mnesia.mongooseim@localhost
 releases
 var
sudo bin/mongooseimctl status
The node mongooseim@localhost is started with status: started

MongooseIM 1.5.0 版正在该节点上运行。

4

1 回答 1

0

ejabberd 中的聚类基于 Mnesia。一旦为 Mnesia 中的给定节点名称创建了模式,您以后就无法更改它。

在您的情况下,您使用localhost主机名定义了节点名称。这意味着您只能在该机器本地创建一个集群(几个 Erlang 节点)。这可能不是你想要的。

因此,如果您想更改 ejabberd 节点名称,您需要从 Mnesia 数据库中导出数据,删除您的 Mnesia 数据库文件夹,将集群节点名称更改为新的,然后重新导入您的数据。这是 ejabberd 的教程,应该让您走上正轨:http ://docs.ejabberd.im/admin/guide/managing/#change-computer-hostname

于 2015-09-28T09:30:26.357 回答