• 副本集:简单说,副本集就是有自动故障恢复功能的主从集群。主从集群和副本集最为明显的区别:副本集没有固定的“主节点”。整个集群会选出一个主节点。当其不能工作时,变更到其他节点。二者看起来非常相似:副本集总会有一个活跃节点(primary),一个或多个备份节点(secondry)。
  • 副本集最美妙的地方就是所有东西都是自动化的。首先,它为你做了很多管理工作,自动提升备份节点为活跃节点。其次,对开发者而言,也很易用:仅需要为副本集指定服务器。驱动程序就会自动找到服务器。在当前活跃节点死机时,自动处理故障恢复这类事情。
  • mongodb 的复制至少需要两个服务器或者节点。其中一个是主节点。负责处理客户端请求。其它的都是从节点。负责映射主节点的数据。                                               主节点记录在其上执行的所有操作。从节点定期轮询主节点得到这些操作。然后对自己的数据副本执行这些操作。由于和主节点执行了相同的操作,从节点就能与主节点的数据保持同步。
  • 主节点的操作记录称为oplog(operation log)。oplog存储在一个特殊的数据库中。叫做local。oplog就在其中的oplog.$main集合里面。oplog中的每个文档都代表主节点上执行的一个操作。oplog只记录改变数据库状态的操作。查询操作就不存储在oplog中。启动服务器时用--oplogSize 指定大小。
  • 从节点第一次启动时,会对主节点数据进行完整的同步。同步完成后,从节点会查询主节点的oplog并执行这些操作,以保证数据是最新的。

MongoDB 复制的更多相关文章

  1. MongoDB 复制集 (一) 成员介绍

       一 MongoDB 复制集简介          MongoDB的复制机制主要分为两种:          Master-Slave    (主从复制)      这个已经不建议使用       ...

  2. MongoDB 复制篇

    mongoDB 复制篇 复制集简介 Mongodb复制集由一组Mongod实例(进程)组成,包含一个Primary节点和多个Secondary节点,Mongodb Driver(客户端)的所有数据都写 ...

  3. MongoDB复制

    1. 什么是复制 (1)MongoDB复制是将数据同步在多个服务器的过程. (2)复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性. (3)复制还允 ...

  4. mongodb 复制集

    mongodb 复制集 复制集简介 Mongodb复制集由一组Mongod实例(进程)组成,包含一个Primary节点和多个Secondary节点,Mongodb Driver(客户端)的所有数据都写 ...

  5. MongoDB 复制(副本集)

    MongoDB复制是将数据同步在多个服务器的过程. 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性. 复制还允许您从硬件故障和服务中断中恢复数据. ...

  6. mongodb复制+分片集原理

    ----------------------------------------复制集---------------------------------------- 一.复制集概述: Mongodb ...

  7. Raft与MongoDB复制集协议比较

    在一文搞懂raft算法一文中,从raft论文出发,详细介绍了raft的工作流程以及对特殊情况的处理.但算法.协议这种偏抽象的东西,仅仅看论文还是比较难以掌握的,需要看看在工业界的具体实现.本文关注Mo ...

  8. MongoDB复制集

    1.1 MongoDB复制集简介 一组Mongodb复制集,就是一组mongod进程,这些进程维护同一个数据集合.复制集提供了数据冗余和高等级的可靠性,这是生产部署的基础. 1.1.1 复制集的目的 ...

  9. MongoDB复制集原理、环境配置及基本测试详解

    一.MongoDB复制集概述 MongoDB复制集实现了冗余备份和故障转移两大功能,这样能保证数据库的高可用性.在生产环境,复制集至少包括三个节点,其中一个必须为主节点,一个从节点,一个仲裁节点.其中 ...

  10. MongoDB复制集技术

    复制集搭建 没毛病: https://www.cnblogs.com/nicolegxt/p/6841442.html?utm_source=itdadao&utm_medium=referr ...

随机推荐

  1. jquery 鼠标图片经过效果

    <script> //鼠标图片经过效果 $(function(){ $(".jione_box ").css("background-color", ...

  2. pyqt QTableWidget例子学习(重点)

    # -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' from PyQt4.QtGui import * from PyQ ...

  3. Handsontable通用方法

    1.clear():清空数据 2.createCol(index,amount,createAutomatically):添加列        index:列索引,amount:添加的列总数,crea ...

  4. python学习之路-11 多线程、多进程、协程

    python内置队列模块 queue queue的四种队列 q = queue.Queue() # 先进先出队列 q = queue.LifoQueue() # 后进先出队列 q = queue.Pr ...

  5. 前端编辑神器Brackets

    介绍 Brackets 是Adobe发布的一款免费.开源且跨平台的 HTML/CSS/JavaScript 前端 WEB 集成开发环境.使用Node.js构建!官网:http://brackets.i ...

  6. Oracle:grouping和rollup

    Oracle grouping和rollup简单测试 SQL,,,) group by department_id order by department_id; DEPARTMENT_ID SUM( ...

  7. T-SQL和PL/SQL 区别

    结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统:同时也是数据库 ...

  8. CSS3 target伪类简介

    CSS3 target伪类是众多实用的CSS3特性中的一个.它用来匹配文档(页面)的URI中某个标志符的目标元素.具体来说,URI中的标志符通常会包含一个”#”字符,然后后面带有一个标志符名称,比如# ...

  9. PHP学习笔记三十三【自定义错误处理器】

    <?php //自定义错误处理器 //$errorno 错误号 //$errmes错误信息 //这两个参数是必须的 function my_error($errorno,$errmes) { e ...

  10. (原创)ubuntu 12.04 安装 apache ant

    1. go to the websie to download the newest version of ant (search google by "Apache Ant"). ...