Mongodb副本集配置好以后,少不了维护,维护内容也不是很多,主要是现在状态和增删节点等。
在说维护之前,得先说说Mongodb副本集的同步机制。
数据复制的目的是使数据得到最大的可用性,避免单点故障引起的整站不能访问的情况的发生,Mongodb的副本集在同一时刻只有一台服务器是可以写的,副本集的主从复制也是一个异步同步的过程,是slave端从primary端获取日志,然后在自己身上完全顺序的执行日志所记录的各种操作(该日志是不记录查询操作的),这个日志就是local数据库中的oplog.rs表,默认在64位机器上这个表是比较大的,占磁盘大小的5%,oplog.rs的大小可以在启动参数中设定:--oplogSize 1000,单位是M。
在生产环境中建议此值设置的大一些,以防止无法同步的情况发生。
现在开始正式说维护命令
1,查看同步状态
命令db.printSlaveReplicationInfo()可以查看slave延迟情况。
source:从库的ip和端口
syncedTo:目前的同步情况,以及最后一次同步的时间
从上面可以看出,在数据库内容不变的情况下他是不同步的,数据库变动就会马上同步。
2增删节点
1,增加节点
Mongodb可以做到在不停机的情况下无缝增加节点。命令也很简单,两步就可以完成
1,启动新的Mongodb,并指定副本集
2,把副本集添加到"串"中
启动一个新的进程,我用的mongodb4这个目录,端口号4444,然后运行添加命令。
命令的格式是:rs.add("ip+端口号")
注意:这个命令只能用在主库中,可以看到我重新连接到了端口号是3333的主库。
然后查看下状态
可以看到4444已经做为从库添加到了副本集。
大家也可以发现这里多出了一个属性:stateStr和errmsg,这两个属性表示当前同步的状态,到了什么进度
stateStr:RECOVERING//表示正在同步数据,
SECONDARY//表示已经成功同步,可以正常使用。
2,删除节点
出于种种原因把,现在准备删除一个节点,空闲出一台服务器
这时使用命令rs.remove("IP+端口")即可移除该节点
现在我移除刚刚添加上的4444这个节点
4444已经被删除。
副本集的基本维护也就这么多了,能满足大部分的需求。
转自 http://www.cnblogs.com/spnt/archive/2012/07/25/2608420.html
相关推荐
MongoDB中的副本集(Replica Set)是一组维护相同数据集的mongod服务。 副本集可提供冗余和高可用性,是所有生产部署的基础。也可以说,副本集类似于有自动故障恢复功能的主从集群。通俗的讲就是用多台机器进行同一...
副本集是 MongoDB 提供的一种高可用性和数据冗余的解决方案,它允许多个 MongoDB 实例同步数据,以实现故障转移和读写分离。本篇文章将深入探讨 MongoDB 副本集的相关知识。 首先,我们来理解如何启动一个副本集。...
提供的"MongoDB集群负载均衡资料"应该包含详细的部署文档,指导如何设置和管理MongoDB副本集;使用文档会介绍如何有效利用副本集特性进行数据操作;问题解决文档则可以帮助用户在遇到问题时找到解决方案。 总结来说...
在大型分布式环境中,为了确保数据的高可用性和水平扩展能力,MongoDB 提供了副本集(Replica Set)和分片(Sharding)两种主要的部署策略。 副本集是 MongoDB 中用于实现数据冗余和故障恢复的核心机制。在一个副本...
MongoDB是一种流行的NoSQL文档...对于数据库管理员或开发者而言,了解和掌握上述知识点是管理MongoDB副本集所必须的。同时,为了确保数据的可靠性、一致性和高可用性,需要在实际部署和运维过程中充分应用这些知识点。
复制集是MongoDB中一组MongoDB节点的集合,这些节点保持着相同的数据副本。当主节点出现故障时,复制集会自动选举一个新的主节点,从而保证服务不中断。复制集包含一个主节点(primary)和多个从节点(secondary)...
4. **高可用性**:通过副本集(Replica Sets)实现,副本集是一组维护相同数据集的MongoDB服务器,可以提供数据的高可用性和自动故障转移。 5. **丰富的查询语言**:MongoDB提供了一个强大的查询语言,支持文档的...
总的来说,MongoDB副本集的搭建和维护是一项技术性和实践性都很强的工作,需要对MongoDB的复制机制、故障转移策略以及网络通信有深入理解。在实际操作中,可能会遇到各种预料之外的问题,但只要熟悉MongoDB的命令行...
设置MongoDB副本集** 为了实现高可用性,可以创建一个副本集。在多台服务器上重复上述安装步骤,然后在其中一台上初始化副本集,例如`server1`: ```bash sudo mongo --host server1:27017 use admin db.run...
在大型应用中,为了确保高可用性、可扩展性和性能,MongoDB 提供了两种核心技术:副本集和分片。 **副本集(Replica Sets)** 副本集是 MongoDB 的一种高可用性解决方案,它通过复制数据到多个节点来确保数据的冗余...
下面我们将深入探讨MongoDB副本集的配置及其重要性。 **一、副本集的基本概念** 1. **主节点(Primary)**:副本集中负责所有读写操作的节点。当客户端发起读写请求时,数据会首先被写入主节点,然后由主节点复制...
MongoDB的复制集是数据库高可用性和数据安全性的重要机制,主要分为传统的主从复制和更为先进的副本集。这两种方式都允许在多个服务器之间同步数据,提高数据的冗余度和可用性,确保在单点故障时能快速恢复服务。 ...
### MongoDB搭建、Shell操作、索引、副本集 #### MongoDB介绍 MongoDB是一款基于分布式文件存储的开源数据库系统。在各类NoSQL数据库中,MongoDB因其高性能、易扩展及丰富的特性而受到广泛关注。 ##### 官方文档 -...
MongoDB的复制功能,也称为副本集,是其高可用性和数据冗余的关键特性。副本集允许在多个服务器上维护相同的数据副本,从而提供数据备份、增强可用性和故障恢复能力。下面将详细介绍MongoDB复制(副本集)的原理、...
在本文中,我们将探讨 MongoDB 的两个关键特性:副本集和分片,并通过示例进行详细解释。 **一、MongoDB 副本集** 副本集是 MongoDB 提供的一种高可用性解决方案,它通过在多个节点之间复制数据来确保数据的安全性...
一旦主节点出现故障,副本集会自动进行选举,新的主节点将接管服务,避免了系统停机,这也是MongoDB副本集相对于传统主从架构的一大优势。 总的来说,MongoDB的复制功能是构建高可用、容错性强的数据库系统的关键...
8. **扩展性与自动伸缩**:Kubernetes可以通过Horizontal Pod Autoscaler(HPA)自动调整MongoDB副本数量,以应对负载变化。但需要注意的是,MongoDB的副本集成员数量应谨慎调整,避免破坏副本集的平衡。 9. **安全...
MongoDB副本集操作步骤包括: 1. 将已有MongoDB节点改造为副本集:复制现有MongoDB实例的dbpath目录,并重命名,之后通过配置文件或命令行参数指定replSet选项启动实例。 2. 初始化副本集:在副本集只有一个节点时...