Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.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 3.4-什么&x27;将副本添加到副本集中的正确方法是什么?_Mongodb - Fatal编程技术网

Mongodb 3.4-什么&x27;将副本添加到副本集中的正确方法是什么?

Mongodb 3.4-什么&x27;将副本添加到副本集中的正确方法是什么?,mongodb,Mongodb,在文档中,我找到了两种向成员添加副本的方法: 那么,看看我是否理解:这句话是真的吗 rs.add()用于将成员的额外副本添加到其副本集中。可用于配置服务器和碎片 sh.addShard()是将碎片添加到集群的特定方法。但为了方便起见,还可以使用它将副本添加到碎片的复制集中 多谢各位 rs.add()用于将成员的额外副本添加到其副本集中。可用于配置服务器和碎片 - rs.add()用于将成员的额外副本添加到其副本集中 上述说法是正确的。但更准确地说,我将其改写为“向当前主副本集添加额外成员

在文档中,我找到了两种向成员添加副本的方法:

那么,看看我是否理解:这句话是真的吗

  • rs.add()用于将成员的额外副本添加到其副本集中。可用于配置服务器和碎片
  • sh.addShard()是将碎片添加到集群的特定方法。但为了方便起见,还可以使用它将副本添加到碎片的复制集中
多谢各位

rs.add()用于将成员的额外副本添加到其副本集中。可用于配置服务器和碎片

-

rs.add()用于将成员的额外副本添加到其副本集中

上述说法是正确的。但更准确地说,我将其改写为“向当前主副本集添加额外成员”

可用于配置服务器

是的,如果您在MongoDB 3.2中使用-as对立的三个镜像配置服务器(SCCC),或者您正在使用MongoDB 3.4

和碎片

这是不对的。Shard是集群的逻辑成员,其本身可以是副本集或独立的(建议仅出于测试/开发目的使用独立的)。不能使用
rs
shell hellper将碎片添加到集群

sh.addShard()是将碎片添加到集群的特定方法。但为了方便起见,还可以使用它将副本添加到碎片的复制集中

-

sh.addShard()是将碎片添加到集群的特定方法

正确的

但为了方便起见,还可以使用它将副本添加到碎片的复制集中

不是真的
addShard
,顾名思义,它用于将shard添加到集群中,而不是将成员(您称之为副本)添加到集合中。如前所述,碎片可以是独立的或副本集。在后一种情况下,
addShard
参数必须是副本集名称(
rs1
)后跟“/”的一个字符。后跟副本集种子成员。总而言之:
“rs1/mongodb0.example.net:27017”

在将副本集作为碎片添加到集群之前,至少必须初始化副本集。在副本集作为碎片加入集群后,始终可以从该副本集中添加(或删除)成员

rs.add('mongodb0.example.net:27017')
sh.addShard( "rs1/mongodb0.example.net:27017" )