内容简介:本文档回答了有关MongoDB中复制的常见问题。另请参阅手册中的“••
本文档回答了有关 MongoDB 中复制的常见问题。另请参阅手册中的“ 复制 ”部分,其中提供了复制的概述,包括有关以下内容的详细信息:
• 副本集成员
• 副本集选举
MongoDB支持哪种复制?
MongoDB 4.0 移除了不再推荐使用的master-slave复制架构的支持。
复制是否可以通过Internet和WAN连接进行?
MongoDB可以通过“noisy”连接进行复制吗?
是的,但连接失败和非常明显的延迟情况下不行。
副本集的成员将尝试重新连接到该组的其他成员以应对网络波动。这不需要管理员干预。但是,如果副本集中节点之间的网络连接非常慢,则节点成员可能无法跟上复制。
也可以看看
副本集选举如果复制已经提供数据冗余,为什么还要使用journaling(预写日志,WAL)功能?
journaling功能有助于加快崩溃恢复速度。在journaling技术存在之前,崩溃的恢复通常需要修复数据库 或数据完全重新同步。两者都很慢,并且第一个是不可靠的。
journaling功能对于防止电源故障特别有用,尤其是当您的副本集部署在单个数据中心或电源电路中时。
当 副本集 与journaling功能一起运行时,您可以安全地重新启动 mongod 实例而无需其他人工干预。
注意
journaling需要一些资源开销用于写入操作。但是,日记对读取性能没有影响。
在MongoDB v2.0及更高版本的所有64位版本上journaling功能是默认启用的。
仲裁节点与副本集的其余节点交换了哪些信息?
仲裁节点(Arbiters)永远不会复制集合的数据内容,但会与副本集的其余节点交换如下信息:
• 用于与副本集认证仲裁节点的凭据。这些交换数据是加密的。
• 副本集配置数据和投票数据。此信息未加密。仅加密凭证信息。
如果您的MongoDB使用TLS / SSL部署,则仲裁节点与副本集的其他成员之间的所有通信都是安全的。
有关详细信息,请参阅 配置mongod和mongos TLS / SSL 的文档。与所有MongoDB组件一样,应该在安全网络上运行仲裁节点。
参见
副本集成员使用了不同大小的磁盘空间是否正常?
是正常的。
因素包括:不同的oplog大小,不同程度的存储碎片,以及MongoDB的数据文件预分配都可能导致节点之间存储利用率的变化。添加成员的时间不同,则存储使用差异最为明显(译者注:可以理解为先后添加,因此上述存储碎片程度等差异就会比较明显,从而导致影响磁盘占用不同)。
我可以重命名副本集吗?
不可以。
您可以使用“ 从MongoDB备份还原副本集 ”教程中所述的备份和还原过程 来创建具有所需名称的新副本集。可能需要停机时间以确保原始副本集和新副本集之间的奇偶校验。
以上所述就是小编给大家介绍的《常见问题:复制和副本集》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
代码阅读方法与实践
斯平内利斯 / 赵学良 / 清华大学出版社 / 2004-03-01 / 45.00元
代码阅读有自身的一套技能,重要的是能够确定什么时候使用哪项技术。本书中,作者使用600多个现实的例子,向读者展示如何区分好的(和坏的)代码,如何阅读,应该注意什么,以及如何使用这些知识改进自己的代码。养成阅读高品质代码的习惯,可以提高编写代码的能力。 阅读代码是程序员的基本技能,同时也是软件开发、维护、演进、审查和重用过程中不可或缺的组成部分。本书首次将阅读代码作为一项独立课题......一起来看看 《代码阅读方法与实践》 这本书的介绍吧!