当前位置: 首页 > 知识库问答 >
问题:

mongodb在分片机中的复制

闾丘树
2023-03-14

我已经在一台具有三个不同端口(例如27018[master]、27019、27020)的机器中进行了复制。我还在一台机器上用两个不同的端口(比如27021、27022)进行了分片。

现在我必须为分片的计算机端口实现复制。我需要为27021和27022实现复制。我怎么能这么做?请帮我解决这个问题。

    null
{
    "ok" : 0,
    "errmsg" : "No host described in new configuration 1 for replica set configReplSet maps to this node",
    "code" : 93
}

共有1个答案

云卓
2023-03-14

有一个方法可以达到我的要求。步骤如下

  • mongod--configsvr--dbpath f:\data1\configdb\--replset rs2--port 27017
  • mongod--configsvr--dbpath f:\data2\configdb\--replset rs2--port 27018
  • mongod--configsvr--dbpath f:\data3\configdb\--replset rs2--port 27019
  • 蒙哥MachineIP:27017
  • config={_id:“rs2”,成员:[{_id:0,主机:'10.18.0.225:27017'},{_id:1,主机:'10.18.0.225:27018'},{_id:2,主机:'10.18.0.225:27019'}]}
  • rs.initiate(config)
  • rs.status()
  • mongos-configDB MachineIP:27017--端口27020
    null
    null
  • 蒙哥MachineIP:27021
  • config={_id:“rs0”,成员:[{_id:0,host:'machineIP:27021'},{_id:1,host:'machineIP:27022'},{_id:2,host:'machineIP:27023'}]}
  • rs.initiate(config)
  • rs.status()
  • 蒙哥MachineIP:27024
  • config={_id:“rs0”,成员:[{_id:0,host:'machineIP:27024“},{_id:1,host:'machineIP:27025”},{_id:2,host:'machineIP:27026“}]}
  • rs.initiate(config)
  • rs.status()
  • sh.status()
  • sh.addshard(“rs0/machineIP:27021”)
  • sh.addshard(“rs0/machineIP:27024”)
  • sh.status()
  • sh.enablesharding(“测试”)
  • sh.shardCollection(“test.stud”,{id:1})
  • sh.status()

希望这会有所帮助:-)

 类似资料:
  • 我已经在kuberenetes中使用散列分片设置了分片的MongoDB集群。我首先创建了配置服务器副本集,然后创建了2个分片副本集。最终创建了mongos来连接分片集群。 我按照下面的链接设置分片MongoDB点击https://docs . MongoDB . com/manual/tutorial/deploy-sharded-cluster-hashed-sharding/ 在创建mongo

  • 主要内容:MongoDB 中的分片,分片实例分片是跨多台机器存储数据的过程,它是 MongoDB 满足数据增长需求的方法。随着数据的不断增加,单台机器可能不足以存储全部数据,也无法提供足够的读写吞吐量。通过分片,您可以添加更多计算机来满足数据增长和读/写操作的需求。 为什么要分片? 在复制中,所有写操作都将转到主节点; 对延迟敏感的查询仍会转到主查询; 单个副本集限制为 12 个节点; 当活动数据集很大时,会出现内存不足; 本地磁盘不够大;

  • 本文向大家介绍MongoDB分片测试,包括了MongoDB分片测试的使用技巧和注意事项,需要的朋友参考一下 分片是mongoDB扩展的一种方式。分片分割一个collection并将不同的部分存储在不同的机器上。当一个数据库的collections相对于当前空间过大时,你需要增加一个新的机器。分片会自动的将collection数据分发到新的服务器上。 1. 连接到mongos可查看系统相关信息 2.

  • 对于伸缩/故障转移,mongodb使用“副本集”,其中有一个主服务器和一个或多个辅助服务器。Primary用于写操作。中学用于阅读。这几乎是SQL编程中使用的主从模式。如果主节点下降,则次节点集群中的次节点将取代它的位置。因此,水平伸缩和故障转移的问题得到了解决。然而,这似乎不是一个允许分叉的解决方案。一个真正的碎片只保存整个数据的一部分,所以如果副本集中的次要碎片是碎片,当它没有服务请求所需的所

  • 我创建了一个MongoDB自动分片集群,其中包含3个分片服务器(无复制),1个配置服务器和1个Mongos实例。 下面是 sh.status() 输出。 虽然这里的块数量很大,但所有数据都只存储在一个分片中。平衡器状态为“活动”,但它不是一直运行。一旦它只运行了5-10秒。它显示如下错误, 任何人都可以帮我解决它吗?我是MongoDB的新手,希望通过创建分片集群来学习和测试MongoDB的可扩展性

  • 用途:我有一个大的缓冲区,我希望有一个指向缓冲区中不同loc的指针数组/片。 我在做什么: 我的问题: 这会复制内存吗?我猜不是,但我找不到任何地方来证实这一点 确定是否存在内存拷贝的最佳方法/工具是什么