`
chenzhou123520
  • 浏览: 4257114 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Mongodb主从复制

阅读更多

主从复制是Mongodb最常用的复制方式。这种方式非常灵活,可用于备份、故障恢复、读扩展等。Mongodb主从结构如下图所示:

mongodb主从架构

最基本的方式就是建立一个主节点和一个或者多个从节点,每个从节点要知道主节点的地址。主节点服务器使用mongod --master方式启动,而从节点服务器则使用mongod --slave --source master_address方式启动。其中master_address指的是主节点服务器的地址。

 

一般主从节点是在多台服务器上,这里我通过在单台机器上建立多个实例来模拟主从复制。

首先建立主从节点数据目录:

[root@localhost mongodb]# mkdir -p /opt/mongodb/data/dbs/master
[root@localhost mongodb]# mkdir -p /opt/mongodb/data/dbs/slave

然后配置主从节点的配置文件(也可以通过参数直接启动)

mongodb-master.conf(主节点配置文件)

port=10000
dbpath=data/dbs/master
logpath=log/mongodb-master.log
logappend=true

mongodb-slave.conf(从节点配置文件)

port=10001
dbpath=data/dbs/slave
logpath=log/mongodb-slave.log
logappend=true

接着分别启动主节点服务和从节点服务:

1)启动主节点服务

[root@localhost mongodb]# ./bin/mongod -f mongodb-master.conf --master
all output going to: log/mongodb-master.log

2)启动从节点服务(注意需要使用--source参数指定主服务的地址)

[root@localhost mongodb]# ./bin/mongod -f mongodb-slave.conf --slave --source localhost:10000
all output going to: log/mongodb-slave.log

然后连接到主节点

[root@localhost mongodb]# ./bin/mongo localhost:10000
MongoDB shell version: 2.0.6
connecting to: localhost:10000/test
> db.users.find() #查询主节点users集合中的数据,结果返回为空
> 

使用另外一个连接连接到从节点

[root@localhost mongodb]# ./bin/mongo localhost:10001
MongoDB shell version: 2.0.6
connecting to: localhost:10001/test
> db.users.find() #查询从节点users集合中的数据,结果也返回为空
>

往主节点users集合中插入数据

#首先往users集合中插入数据
> db.users.save({"name":"zhouxiaofei","position":"Web tester"})
> db.users.save({"name":"chenzhou","position":"Java developer"})
> db.users.find() #查询主节点users集合中数据,返回如下结果
{ "_id" : ObjectId("502a83750e192a4a90d0f6c1"), "name" : "zhouxiaofei", "position" : "Web tester" }
{ "_id" : ObjectId("502a837c0e192a4a90d0f6c2"), "name" : "chenzhou", "position" : "Java developer" }
> 

通过另外一个连接从节点的实例查询从节点中users集合中的数据

> db.users.find() #查询从节点中users集合,返回了主节点中插入的数据
{ "_id" : ObjectId("502a83750e192a4a90d0f6c1"), "name" : "zhouxiaofei", "position" : "Web tester" }
{ "_id" : ObjectId("502a837c0e192a4a90d0f6c2"), "name" : "chenzhou", "position" : "Java developer" }
> 

根据结果可以看出,简单的主从复制已经实现。关于Mongodb主从复制更多的知识,可以参考mongodb在线文档,地址如下:http://www.mongodb.org/display/DOCS/Master+Slave

分享到:
评论

相关推荐

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

    ### MongoDB 主从复制,副本集分布式存储 #### 一、MongoDB 主从复制与副本集的概念 MongoDB 是一种非常流行的非关系型数据库系统,它采用面向文档的数据模型,能够高效地处理大量的非结构化数据。为了提高系统的...

    mongodb主从复制.docx

    ### MongoDB主从复制详解 #### 一、MongoDB主从复制概述 MongoDB的主从复制是一种常见的数据复制模式,它允许数据从一个主节点(Master)复制到一个或多个从节点(Slave)。这种架构有助于实现数据冗余、提高读取...

    MongoDB主从复制.pdf

    实施MongoDB主从复制的过程如下: 1. **配置主节点**:首先,启动一个MongoDB实例作为主节点,例如在D盘,通过命令`mongod --dbpath='XXX' --master`启动,使用默认的27017端口。 2. **配置从节点**:然后启动另一...

    Python-MongoMultiMaster一个帮助你搭建MongoDB主从复制的工具

    MongoMultiMaster是一个基于Python编写的工具,专门用于简化MongoDB主从复制(也称为分片集群)的配置过程。在大型分布式系统中,数据的可靠性和可用性是至关重要的,而MongoDB的主从复制机制正好能提供这样的功能。...

    详解mongoDB主从复制搭建详细过程

    MongoDB的主从复制是一种数据冗余和故障转移机制,它允许数据在多个服务器之间进行复制,确保数据的安全性和可用性。在这个过程中,一个MongoDB实例作为主节点,负责接收所有写操作,而其他实例作为从节点,同步主...

    mongodb主从复制_动力节点Java学院整理

    MongoDB的主从复制是一种常见的数据冗余和故障恢复策略,它允许数据在多个服务器之间进行同步,确保数据的安全性和可用性。主从复制的基本原理是,一个MongoDB实例作为主节点,负责处理所有写操作,而其他节点作为从...

    MongoDB主从环境搭建

    以下是对MongoDB主从环境搭建的详细步骤: 1. **安装MongoDB**: 首先,你需要在所有参与复制的服务器上安装MongoDB。根据你的操作系统(如Ubuntu、CentOS或Windows)下载并安装相应的MongoDB二进制包。 2. **...

    单台windows搭建mongoDb主从集群

    1. **主从复制(Replication)**: MongoDB的主从复制是其高可用性架构的基础,通过复制数据到多个节点,确保即使主节点故障,从节点也能接管服务,保证数据不丢失。 2. **单台Windows系统**:尽管MongoDB推荐在多台...

    MongoDB 主从复制实例讲解

    MongoDB的主从复制是一种传统的高可用性和数据冗余机制,它允许数据在多个服务器之间进行复制,确保数据的安全性和服务的连续性。虽然现在MongoDB推荐使用副本集(Replica Sets)代替主从复制,因为副本集提供了更高...

    mongodb主从结构的配置

    标题“mongodb主从结构的配置”指的是在MongoDB环境中设置主从复制的过程。这一过程包括以下几个关键步骤: 1. **环境准备**:首先,你需要在至少两台服务器上安装MongoDB。一台作为主节点,另一台或多台作为从节点...

    MongoDB的Master-Slave主从模式配置及主从复制要点解析

    1. **KeyFile生成**:为了保证安全,MongoDB主从复制通常需要认证。这需要生成一个keyFile,然后将其放置在主节点和从节点的适当位置,并设置适当的权限。 2. **主节点配置**:在主节点的配置文件(如`/etc/mongodb...

    mongodb主从备份

    1. **主从复制集** MongoDB 还支持更为复杂的复制集架构,可以通过增加更多的从节点形成复制集,进一步提升系统的可靠性和性能。 2. **故障转移** 当主节点出现故障时,复制集中的从节点之一可以自动晋升为主...

    详解mongodb 主从配置

    主从配置在 MongoDB 中是一个重要的概念,它允许一个主节点接收所有写操作,而从节点则复制主节点的数据,以便在主节点故障时能够无缝接管服务。 在 MongoDB 的主从配置中,通常有一个主服务器(master)负责处理...

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

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

    mongodb linux 搭建mongo 主从配置安装手册

    通过以上步骤,您可以成功地在Linux环境下搭建MongoDB主从集群,并实现基本的数据管理和维护功能。这样的配置能够有效地提高数据处理能力和系统可用性,特别是在高并发场景下表现更加突出。希望这些步骤能帮助您更好...

Global site tag (gtag.js) - Google Analytics