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 ...
随机推荐
- ccenteros 部署 redis
step one : yum install redis -- 安装redis数据库 step two:安装完成之后开启redis 服务 service redis start syste ...
- 看我如何使用IDEA引入GitHub上的Maven项目,从Clone到打开,图文步骤,你绝对看的懂!!
废话不多说,就一个字:干! 1.登录GitHub,复制项目仓库的地址 2.打开IDEA,选择git(三种方式选择) 第一种方式: 第二种方式: 第三种方式: 选择git后 3.下面是我改存放的目录 正 ...
- poj 2186 Popular Cows :求能被有多少点是能被所有点到达的点 tarjan O(E)
/** problem: http://poj.org/problem?id=2186 当出度为0的点(可能是缩点后的点)只有一个时就存在被所有牛崇拜的牛 因为如果存在有两个及以上出度为0的点的话,他 ...
- Python实现爬虫从网络上下载文档
最近在学习Python,自然接触到了爬虫,写了一个小型爬虫软件,从初始Url解析网页,使用正则获取待爬取链接,使用beautifulsoup解析获取文本,使用自己写的输出器可以将文本输出保存,具体代码 ...
- haproxy+keepalived主备与双主模式配置
Haproxy+Keepalived主备模式 主备节点设置 主备节点上各安装配置haproxy,配置内容且要相同 global log 127.0.0.1 local2 chroot /var/lib ...
- android Volley+Gson的使用
听说Volley框架非常好用,今天试了一下post请求,果然如此,因为我传的是json获取的也是json所以就写了一种关于json的请求,其实其他的代码都差不多.首先要先创建一个全局的变量,请求入队列 ...
- Array-快餐管饱
一.如何获得一个数组? rsp: 1. [] 2.new Array() 3.str.split() ps:new Array()可以不加括号,其传一个参数代表数组长度,两个及以上就是初始化数组. ...
- (转载)jsp的内部方法jspInit(),_jspService(),jspDestroy()
jspInit(){}:jsp Page被初始化的时候调用该方法,并且该方法仅在初始化时执行一次,所以可以在这里进行一些初始化的参数配置等一次性工作,由作者创建jspDestroy(){}:jsp P ...
- Axure RP Extension for Chrome安装
Axure RP Extension for Chrome安装 Axure RP Extension for Chrome是一款谷歌插件,主要可以用来查看原型文件.以前安装插件的时候总是找半天资源,很 ...
- Apache Maven(六):存储库
Maven 存储库主要是存放一些第三方依赖jar包等. 严格来说,只有两种存储库:本地和远程,本地存储库是指您远程下载到本地的一个缓存,还包含尚未发布的临时构建文件.远程存储库是指一些可以通过各种协议 ...