MongoDB的复制一:复制的原理
复制有三种角色:


http://www.itpub.net/thread-1740982-1-1.html


db.products.insert({ writeConcern: { w: 2, wtimeout: 5000 } } #至少写入一个从结点){ w: "majority", wtimeout: 5000 }
db.sources.insert( { host: <masterhostname> <,only: databasename> } );
use admindb.runCommand( { resync: 1 } )
use localdb.sources.update( { host : "prod.mississippi" },{ $set : { host : "prod.mississippi.example.net" } } )
> rs.initiate();{"info2" : "no configuration specified. Using a default configuration for the set","me" : "node1:27017","ok" : 0,"errmsg" : "No host described in new configuration 1 for replica set repl0 maps to this node","code" : 93}
> rs.conf();2015-12-27T11:04:15.763+0800 E QUERY [thread1] Error: Could not retrieve replica set config: {"info" : "run rs.initiate(...) if not yet done for the set","ok" : 0,"errmsg" : "no replset config has been received","code" : 94} :rs.conf@src/mongo/shell/utils.js:1090:11@(shell):1:1> cfg={"_id":"rs0","version":1,"members":[{"_id":1,"host":"192.168.75.10:27017"}]};{"_id" : "rs0","version" : 1,"members" : [{"_id" : 1,"host" : "192.168.75.10:27017"}]}> rs.initiate(cfg);{ "ok" : 1 }
rs0:PRIMARY> rs.add("192.168.75.11:27017");{ "ok" : 1 }rs0:PRIMARY> rs.add("192.168.75.12:27017");{ "ok" : 1 }
rs0:PRIMARY> rs.status();{"set" : "rs0","date" : ISODate("2015-12-27T03:13:26.970Z"),"myState" : 1,"term" : NumberLong(1),"heartbeatIntervalMillis" : NumberLong(2000),"members" : [{"_id" : 1,"name" : "192.168.75.10:27017","health" : 1,"state" : 1,"stateStr" : "PRIMARY","uptime" : 575,"optime" : {"ts" : Timestamp(1451185968, 1),"t" : NumberLong(1)},"optimeDate" : ISODate("2015-12-27T03:12:48Z"),"electionTime" : Timestamp(1451185613, 2),"electionDate" : ISODate("2015-12-27T03:06:53Z"),"configVersion" : 3,"self" : true},{"_id" : 2,"name" : "192.168.75.11:27017","health" : 1,"state" : 2,"stateStr" : "SECONDARY","uptime" : 41,"optime" : {"ts" : Timestamp(1451185968, 1),"t" : NumberLong(1)},"optimeDate" : ISODate("2015-12-27T03:12:48Z"),"lastHeartbeat" : ISODate("2015-12-27T03:13:24.973Z"),"lastHeartbeatRecv" : ISODate("2015-12-27T03:13:26.011Z"),"pingMs" : NumberLong(1),"syncingTo" : "192.168.75.10:27017","configVersion" : 3},{"_id" : 3,"name" : "192.168.75.12:27017","health" : 1,"state" : 2,"stateStr" : "SECONDARY","uptime" : 37,"optime" : {"ts" : Timestamp(1451185968, 1),"t" : NumberLong(1)},"optimeDate" : ISODate("2015-12-27T03:12:48Z"),"lastHeartbeat" : ISODate("2015-12-27T03:13:25.028Z"),"lastHeartbeatRecv" : ISODate("2015-12-27T03:13:25.128Z"),"pingMs" : NumberLong(1),"configVersion" : 3}],"ok" : 1}
rs0:PRIMARY> use testdbswitched to db testdbrs0:PRIMARY> db.test1231.insert({"name":"test repl"});WriteResult({ "nInserted" : 1 })
rs0:SECONDARY> rs.slaveOk();rs0:SECONDARY> use testdbswitched to db testdbrs0:SECONDARY> show collections;test1231rs0:SECONDARY> db.test1231.find();{ "_id" : ObjectId("567f58f221cb21ff2f187d33"), "name" : "test repl" }
设置优先级,是否隐藏及延时cfg = rs.conf()cfg.members[0].priority = 0cfg.members[0].hidden = truecfg.members[0].slaveDelay = 3600rs.reconfig(cfg)
设置选举权:cfg = rs.conf()cfg.members[3].votes = 0cfg.members[4].votes = 0cfg.members[5].votes = 0rs.reconfig(cfg)
MongoDB的复制一:复制的原理的更多相关文章
- MongoDB之Replica Set(复制集复制)
MongoDB支持两种复制模式: 主从复制(Master/Slave) 复制集复制(Replica Set) 下面主要记录我在centos虚拟机上安装replica set,主要参考:http://d ...
- Studio 3T for MongoDB连接51.212复制集
Studio 3T for MongoDB连接51.212复制集 [ #DirectConection Authentication Mode - Basic(MONGODB-CR or SCEAM- ...
- Java基础-输入输出-3.编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc。
3.编写BinIoDemo.java的Java应用程序,程序完成的功能是:完成1.doc文件的复制,复制以后的文件的名称为自己的学号姓名.doc. try { FileInputStream in = ...
- iOS开发之Copy & MutableCopy及深复制 & 浅复制
1.使用copy或mutableCopy方法可以创建一个对象的副本. copy: (1)需要实现NSCoppying协议 (2)创建的是不可变副本(如NSString.NSArray.NSDictio ...
- 简单理解php深复制浅复制问题
其实接触深复制浅复制是通过学习c++了解到的,比如c++很好用的模板,php是不允许方法模板和类模板 一个简单的例子,如果不是很了解php 的取地址符&,可以去看下官方文档,php的& ...
- [No0000B9]C# 类型基础 值类型和引用类型 及其 对象复制 浅度复制vs深度复制 深入研究2
接上[No0000B5]C# 类型基础 值类型和引用类型 及其 对象判等 深入研究1 对象复制 有的时候,创建一个对象可能会非常耗时,比如对象需要从远程数据库中获取数据来填充,又或者创建对象需要读取硬 ...
- MySQL的并行复制多线程复制MTS(Multi-Threaded Slaves)
MySQL的并行复制多线程复制MTS(Multi-Threaded Slaves) http://www.tuicool.com/articles/m2Unmeq 姜承饶 简称MTS:基于binlog ...
- java 浅复制 深复制
1.浅复制 只是复制引用,对引用的操作会影响之前复制的对象. 2.深复制 复制一个完全独立的对象,复制对象与被复制对象相互之间不影响. 只是概念性东西....
- HDFS源码分析数据块复制选取复制源节点
数据块的复制当然需要一个源数据节点,从其上拷贝数据块至目标数据节点.那么数据块复制是如何选取复制源节点的呢?本文我们将针对这一问题进行研究. 在BlockManager中,chooseSourceDa ...
- java 及 Jquery中的深复制 浅复制
发现问题:最近 遇到由于复制对象之后,改变复制后的新变量,原先被复制的对象居然会跟着变. EX:java中: //holidayConfig.getEnd_time()会随着sTime的改变而改变 s ...
随机推荐
- Linux学习——目录结构
在Linux当中,一切皆为文件,包括目录也属于文件.FHS(Filesystem Hierarchy Standard)的出现对文件目录系统做出了统一规范. Linux的目录结构: / - 根 /bi ...
- 史上最简单的SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)(Finchley版本)
转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springcloud/2018/08/30/sc-f2-ribbon/ 本文出自方志朋的博客 在上一篇文章,讲了 ...
- SpringBoot非官方教程 | 第一篇:构建第一个SpringBoot工程
转载请标明出处: https://www.fangzhipeng.com/springboot/2017/07/11/springboot1 本文出自方志朋的博客 简介 spring boot 它的设 ...
- js如何判断数据类型
1.最常见的判断方法:typeof console.log(typeof a) ------------> string console.log(typeof b) ------------&g ...
- 如何用hexo搭建个人博客. 亲测有效
搭建博客: 安装node.js和git 以管理员身份进入cmd. 输入: npm install -g cnpm --registry=https://registry.npm.taobao.org ...
- vsftpd文件服务参数汇总和虚拟用户使用
FTP文件传输协议 FTP协议特点 基于C/S结构 双通道协议:数据和命令连接 数据传输格式:二进制(默认)和文本(w文本格式会修改文件内容) 两种模式:服务器角度 主动(PORT style):服务 ...
- 关于linux命令的说明
开始前我们必须先认识绝对路径与相对路径 绝对路径是从盘符开始的路径 :例如:/etc/sysconfig/network (从根直接指到network) 相对路径是从当前自己所在位置开始的路径:例如我 ...
- PHP队列之理论篇
定义: 特殊的线性表. 特点: 1.先进先出:连结性. 2.作为一种特殊性的表,主要是在表前端进行删除操作,我们称删除的端为对头(front):只能在表的后端进行插入操作,我们称之为称插入 ...
- phpstudy启动时Apache启动不了
打开cmd,输入:D:\phpStudy\PHPTutorial\Apache\bin\httpd.exe -t 回车,即显示错误信息 说是我们的有一个文件目录不存在或者不可读取, 出现这个一般有两种 ...
- QP之QF原理
1.QP简介: 量子平台(Quantum Platform, 简称QP)是一个用于实时嵌入式系统的软件框架,QP是轻量级的.开源的.基于层次式状态机的.事件驱动的平台. QP包括事件处理器(QEP). ...