Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mongodb-can';t使用默认配置启动副本集_Mongodb_Replication - Fatal编程技术网

mongodb-can';t使用默认配置启动副本集

mongodb-can';t使用默认配置启动副本集,mongodb,replication,Mongodb,Replication,我将按照教程部署副本集。当我执行rs.initiate()时,我得到一个错误“所有成员和种子都必须可以访问才能启动集合”,这很奇怪,因为唯一的成员是localhost 您不能仅使用一个成员启动复制集(您在哪里复制数据?!)。本教程告诉您需要三个活动mongod实例 需求:三个不同的系统,因此每个系统都可以运行自己的mongod实例 出于测试目的,可以在同一台物理机器上设置给定副本的三个成员(教程提到:“为了进行临时测试和本指南的目的,您可以在GNU屏幕的单独窗口中运行mongod实例。”)您只需

我将按照教程部署副本集。当我执行
rs.initiate()
时,我得到一个错误“所有成员和种子都必须可以访问才能启动集合”,这很奇怪,因为唯一的成员是localhost

您不能仅使用一个成员启动复制集(您在哪里复制数据?!)。本教程告诉您需要三个活动mongod实例

需求:三个不同的系统,因此每个系统都可以运行自己的mongod实例


出于测试目的,可以在同一台物理机器上设置给定副本的三个成员(教程提到:“为了进行临时测试和本指南的目的,您可以在GNU屏幕的单独窗口中运行mongod实例。”)您只需要在计算机上的三个不同端口上运行三个不同的mongod实例。从您得到的错误来看,似乎无法访问某个端口。只需检查端口是否已被其他应用程序使用。如果是这样,相应的mongod一开始就不会成功启动。因此,rs.initiate()将失败。

我也有同样的错误。 在我的情况下,专家帮助了我:

cfg=rs.conf()
rs.reconfig(cfg,{force:true})

您可以拥有一个仅包含1个副本的副本集。指示您首先通过运行
rs.initialize()
创建仅包含1个成员的副本集。然后添加2个成员有一段时间,您的副本集只有一个成员。