`

【转】Mongodb实现副本集

 
阅读更多

既然使用Mongodb,就不得不用他的安全备份机制:副本集。

Mongodb副本集是什么东西?

  通俗的讲就是用多台机器进行同一数据的异步同步,从而使多台机器拥有同一数据的多个副本,并且当主库当掉时在不需要用户干预的情况下自动切换其他备份服务器做主库。而且还可以利用副本服务器做只读服务器,实现读写分离,提高负载。

需要指数的是:Mongodb的主从复制模式官方已经不在推荐使用了。

 

那么该如何实现呢?

 我用一台的机器的不同文件夹来做下模拟(生产环境下最好用不同的服务器来做物理隔绝)。

我的文件目录是:

F:\mongodb1\

F:\mongodb2\

F:\mongodb3\

那现在开始操作。

 

 

以上就是启动命令。

参数:port: Mongodb的监听端口

         dbpath:数据文件存储路径

     logpath:系统日志存放路径

         replSet :副本集名称,我用的是test,其他的节点必须使用这个名字做副本集名称。

        logappend:日志的写入模式是追加,不是默认的覆盖模式。

同样对目录mongodb2,mongodb3使用以上命令,端口号分别是:2222,3333,如下:

 

 

各个Mongodb启动以后,就只剩下一步了,把他们串在一起。(此处新打开一个cmd来操作,所有的命令都在这里执行,不要把这个关闭了)

 

 

首先通过执行:mongo --port 1111连接到Mongodb1的实例上

然后定义配置信息:config_test,

最后通过rs.initiate(config_test)启动副本集

至此整个副本集的配置已经完成。完成情况可通过rs.status()命令查看

 

 

这里面的几个参数说明下:

health:1   //1表明状态是正常,0表明异常

state:1     // 1表明是primary,2表明是slave,即做备份的机器

从结果看现在是一台主库,两台备份。

当一台服务器当掉会怎么样呢?

我们把mongodb1停掉,然后再运行rs.status(),如下

 

 

可以看到Mongodb已经当掉,这时候Mongodb3成为了主库。

配置完成后就免不了要做维护,关于维护请看我下篇文章

 

转自 http://www.cnblogs.com/spnt/archive/2012/07/25/2608057.html

分享到:
评论

相关推荐

    K8s 部署 MongoDB(副本集)

    MongoDB中的副本集(Replica Set)是一组维护相同数据集的mongod服务。 副本集可提供冗余和高可用性,是所有生产部署的基础。也可以说,副本集类似于有自动故障恢复功能的主从集群。通俗的讲就是用多台机器进行同一...

    k8s 安装 mongodb 分片(Sharding)+ 副本集(Replica Set)

    k8s 安装 MongoDB 分片(Sharding)+ 副本集(Replica Set)是结合 Kubernetes(k8s)和 MongoDB 实现高可用性和高性能的解决方案。本解决方案通过使用 Kubernetes 部署 MongoDB 分片(Sharding)和副本集(Replica ...

    MongoDB副本集配置和数据迁移实战

    由于 MongoDB 的主从复制功能不支持高可用,所以从 3.2 版本开始已经被废弃了,转而用副本集来代替实现数据复制的功能。一个副本集总会有一个活跃节点(Primary)和若干个备份节点(Secondary),还有一个可选的一个...

    MongoDB 主从复制,副本集分布式存储

    ### MongoDB 主从复制,...通过以上步骤,我们不仅可以实现 MongoDB 的主从复制和副本集部署,还可以进一步构建分布式存储系统,满足不同规模应用的需求。这些技术对于提高系统的可用性、扩展性和容错能力至关重要。

    mongodb副本集测试用户验证.pdf

    MongoDB的副本集是数据库高可用性和数据冗余的重要实现方式,它允许数据在多个节点间复制,确保在单个节点故障时系统仍能正常运行。在这个过程中,配置文件和添加节点的方式是基础的部署步骤。为了提升安全性,...

    Mongodb分片副本集集群搭建

    MongoDB分片副本集集群搭建的知识点包含了以下几个方面: 1. MongoDB分片架构的基本组成:MongoDB分片架构由mongos(路由服务器)、config-server(配置服务器)和shard(分片服务器)三部分组成。mongos负责作为...

    MongoDB集群负载均衡资料(mongodb副本集)

    在大规模数据处理场景中,为了实现负载均衡和高可用性,MongoDB提供了副本集(Replica Set)的功能。副本集是MongoDB中的一个关键概念,它允许数据在多个节点之间复制,从而提供冗余和故障转移能力。 **副本集是...

    docker-compose mongodb 副本集

    完成yaml文件编写后,通过在命令行运行“docker-compose up”命令,就可以启动所有定义的服务,实现MongoDB副本集的部署。一旦容器运行起来,可以通过Docker命令查看容器日志,确认MongoDB副本集是否正确配置和运行...

    本地部署 MongoDB TLS 副本集和分片集群 TLS 支持源码脚本

    本地部署MongoDB副本集和分片集群时,引入TLS支持,能够有效防止数据在传输过程中被窃取或篡改,从而提高系统的整体安全性。 本源码脚本提供了一种快速部署本地MongoDB副本集和分片集群的方法,同时启用了TLS支持。...

    mongodb分片与副本集详细配置方案

    MongoDB 是一个高性能、分布式、开源的文档型数据库,它支持分片(sharding)和副本集(replica sets)来实现水平扩展和高可用性。分片是将数据分散到多个物理节点上,以处理大数据量和高并发场景;副本集则是为了...

    MongoDB副本集集群

    MongoDB的集群与分片功能是其一大亮点,其中集群方面,MongoDB支持主从复制和副本集集群。副本集集群的搭建步骤包括成员的初始化、配置副本集的配置文件、启动副本集成员服务、加入副本集以及副本集功能扩展。副本集...

    MongoDB副本集.pdf

    副本集是 MongoDB 提供的一种高可用性和数据冗余的解决方案,它允许多个 MongoDB 实例同步数据,以实现故障转移和读写分离。本篇文章将深入探讨 MongoDB 副本集的相关知识。 首先,我们来理解如何启动一个副本集。...

    MongoDB副本集设置.pdf

    ### MongoDB副本集设置详解 ...- **负载均衡**:副本集支持读写分离,可以将读操作分发到从节点,从而实现负载均衡。 通过上述步骤,可以有效地在生产环境中部署MongoDB副本集,以确保系统的高可用性和数据的安全性。

    MongoDb 副本集和分片.doc

    副本集是 MongoDB 中用于实现数据冗余和故障恢复的核心机制。在一个副本集中,数据会被复制到多个节点上,这些节点通常分布在不同的服务器或硬件上,以增加系统的容错能力。在文档中,我们看到创建了一个名为 `s1` ...

    MongoDB副本集部署(Windows)

    通过以上步骤,你可以在Windows环境中成功部署一个MongoDB副本集,实现数据的高可用性和容错性。在实际生产环境中,还需要考虑网络架构、负载均衡、备份策略等多方面因素,以构建更健壮的数据库系统。

    Mongodb集群之副本集集群搭建

    MongoDB 是一种流行的开源文档型数据库,支持多种集群搭建方式,包括主从模式、副本集(Replica Set)和分片(Sharding)。在本文中,我们将深入探讨副本集集群的构建及其特点。 副本集是MongoDB高可用性和冗余策略...

    Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍

    总之,MongoDB的副本集是实现高可用性和数据容错的重要工具。正确配置和连接副本集可以极大地提升应用的稳定性和可靠性。在Spring和Java环境中,通过适当的配置,应用程序可以轻松地连接到副本集,实现高效的数据...

    mongodb 复制集搭建实例

    复制集是MongoDB中一组MongoDB节点的集合,这些节点保持着相同的数据副本。当主节点出现故障时,复制集会自动选举一个新的主节点,从而保证服务不中断。复制集包含一个主节点(primary)和多个从节点(secondary)...

    CentOS 6.4创建Mongodb副本集

    创建MongoDB副本集是为了实现数据的冗余和故障转移,当集群中的某个节点出现问题时,其他节点可以接管服务,保证业务连续性。在CentOS 6.4上设置MongoDB副本集的步骤如下: 1. **设置hostname**:首先,确保在副本...

    高可用性之巅:MongoDB副本集的构建与实践

    4. **高可用性**:通过副本集(Replica Sets)实现,副本集是一组维护相同数据集的MongoDB服务器,可以提供数据的高可用性和自动故障转移。 5. **丰富的查询语言**:MongoDB提供了一个强大的查询语言,支持文档的...

Global site tag (gtag.js) - Google Analytics