MongoDB复制二:复制集的管理
1.修改oplog的大小
db.shutdownServer()
mongod --port 37017 --dbpath /usr/local/mongodb-linux-x86_64-3.2.0/data
[root@node1 mongodb-linux-x86_64-3.2.0]# mongodump --db local --collection 'oplog.rs' --port 37017 2015-12-27T02:27:40.577+0800 writing local.oplog.rs to dump/local/oplog.rs.bson 2015-12-27T02:27:40.579+0800 done dumping local.oplog.rs (4 documents)
[root@node1 mongodb-linux-x86_64-3.2.0]# mongo --port 37017MongoDB shell version: 3.2.0connecting to: 127.0.0.1:37017/test> db.temp.save(db.oplog.rs.find({},{ts:1,h:1}).sort({$natural:-1}).limit(1).next());WriteResult({ "nInserted" : 1 })> db.temp.find();{ "_id" : ObjectId("567edd9e48b1a3ebcf06049c"), "ts" : Timestamp(1451203909, 1), "h" : NumberLong("4300737341732033822") }
db.oplog.rs.drop()
db.runCommand( { create: "oplog.rs", capped: true, size: (2 * 1024 * 1024 * 1024) } )(单位是字节)db.oplog.rs.save( db.temp.findOne() ) 把temp中oplog保存到新建的oplog中db.oplog.rs.find()
db.shutdownServer()mongod --replSet rs0 --dbpath/usr/local/mongodb-linux-x86_64-3.2.0/data
rs.stepDown()
cfg = rs.conf()cfg.members[0].priority = 0.5cfg.members[1].priority = 0.5cfg.members[2].priority = 1rs.reconfig(cfg)
db.adminCommand({replSetStepDown: 86400, force: 1}) 24小时内让其成为主节点
mongo>rs.freeze(120);120秒内不能成为主节点
mongo>rs.stepDown(120);120秒内不能成为主节点
c.以replication sets方式启动实例
rs0:SECONDARY> rs.printSlaveReplicationInfo();source: 192.168.75.10:27017syncedTo: Sun Dec 27 2015 16:11:49 GMT+0800 (CST)0 secs (0 hrs) behind the primarysource: 192.168.75.11:27017syncedTo: Sun Dec 27 2015 16:11:49 GMT+0800 (CST)0 secs (0 hrs) behind the primary
- 网络原因
- 磁盘原因
- 大量并发
- 大量写数据
- oplog
db = db.getSiblingDB("local")db.oplog.rs.find().sort({$natural:-1}).limit(1)db.oplog.rs.find({ts:{$type:17}}).sort({$natural:-1}).limit(1)
第一个查询结果{ "ts" : {t: 1347982456000, i: 1},"h" : NumberLong("8191276672478122996"),"op" : "n","ns" : "","o" : { "msg" : "Reconfig set", "version" : 4 } }- 第二个查询结果
{ "ts" : Timestamp(1347982454000, 1),"h" : NumberLong("6188469075153256465"),"op" : "n","ns" : "","o" : { "msg" : "Reconfig set", "version" : 3 } }
db.oplog.rs.update( { ts: { t:1347982456000, i:1 } },{ $set: { ts: new Timestamp(1347982456000, 1)}})


MongoDB复制二:复制集的管理的更多相关文章
- MongoDB高可用架构集群管理(一)
MongoDB数据库核心的两个特点:第一个特点是副本集的自动切换,保证数据的高可靠.服务的高可用:第二个特点是自动分片.服务的横向扩展能力. (一)副本集架构 MongoDB的副本集是一组保持相同数据 ...
- MongoDB 复制(副本集)学习
MongoDB 复制(副本集)学习 replication set复制集,复制集,多台服务器维护相同的数据副本,提高服务器的可用性.MongoDB复制是将数据同步在多个服务器的过程.复制提供了数据的冗 ...
- mongodb 3.4复制集配置
1:启动三个实例 /bin/mongod --config /home/mongodb/db27017/mongodb27017.conf /bin/mongod --config /home/mon ...
- mongodb 3.4复制集详解
1关闭数据库,打开三个mongodb数据库数据库实例 rs.printReplicationInfo() 2:原理 主库能够进行读写操作,一个复制集群只能有一个活跃的主库 一般情况下复制可以分为好几种 ...
- mongodb 复制(副本集)
复制(副本集) 什么是复制 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性,并可以保证数据的安全性 复制还允许从硬件故障和服务中断中恢复数据 为什么要复制 数据备份 数据灾 ...
- 学习mongo系列(九)索引,聚合,复制(副本集),分片
一.索引 二.聚合 三.复制(副本集) 四.分片 尚未实践操作. 详见http://www.runoob.com/mongodb/mongodb-indexing.html
- Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列之自签TLS证书及Etcd集群部署(二)
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一 ...
- MySQL复制(二)--基于二进制日志文件(binlog)配置复制
基础环境: 主库 从库 服务器IP地址 192.168.10.11 192.168.10.12 版本 5.7.24 5.7.24 已存在的数据库 mysql> show databases; ...
- MongoDB 事务,复制和分片的关系
摘要:本文尝试对Mongo的复制和分布式事务的原理进行描述,在必要的地方,对实现的正确性进行论证,希望能为MongoDB内核爱好者提供一些参考. 1.前言 MongoDB基于wiredTiger提供的 ...
- MySQL全同步复制基于GR集群架构实现(Centos7)
目录 一. 理论概述 概述 二. 部署 向组加入新节点 测试 三.总结 一. 理论概述 概述 本案例操作的是针对于MySQL的复制类型中的全同步复制,对几种复制类型简单总结下: 异步复制:MySQL默 ...
随机推荐
- Mybatis自动生成的BO对象继承公共父类(BO中过滤掉公共属性)
使用mybatis的代码生成工具:mybatis-generator,如果自动生成的BO都有公共的属性,则可以指定这些BO继承父类(父类中定义公共属性) 1.定义父类 注意:属性public,不要使用 ...
- 写到 HTML 文档
<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...
- 导航栏的ul中的li设置问题
在css中 设置li的float:left 可以实现列表在同一行显示 设置每个li的宽度相等,可以实现每个列表的分离状态. 设置每个li中的文字,text-align:center; 可实现每个列表的 ...
- 如何对Project Proffesional设置预警灯
Project Proffesional没法一目了然地看到,为了实时看到任务延迟情况,我们必须设置预警灯. 1.添加两个新列“文本1”.“文本2”,重命名为“完成预警”.“进度预警”. 2.右键点击“ ...
- 构建高可靠hadoop集群之4-权限指引
此文翻译自http://hadoop.apache.org/docs/r2.8.0/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html ...
- es6几个新增语法的使用----数组
//数组的累加方法 let arr=[1,2,3]; let sum=arr.reduce((prev,cur)=>{ return prev+cur; }) console.log(sum)/ ...
- JS 红包随机
微信随机红包,指定金额指定用户,随机发送红包 var moneys = new Array(); var moneyTotal = 0; function rand(obj){ if(obj.size ...
- 理解HBase
1.HBase HBase: Hadoop Database,根据Google的Big Table设计 HBase是一个分布式.面向列族的开源数据库.HDFS为Hbase提供了底层的数据存储服务,Ma ...
- Could not obtain transaction-synchronized Session for current thread 错误的解决方法!
BsTable bsTable = new BsTable(); // String time = request.getParameter("date"); String tim ...
- python更新mysql数据
>>>cur.execute("update users set username=%s where id=2",("mypython")) ...