在配置副本集之前,我们先来了解一些关于副本集的知识. 1,副本集的原理 副本集的原理与主从很相似,唯一不同的是,在主节点出现故障的时候,主从配置的从服务器不会自动的变为主服务器,而是要通过手动修改配置.但是副表集就不用,它会自动选出一台服务器做为主节点,从而保障系统的稳定性. 2,副本集新的主节点是怎么选举出来的呢 是通过bully算法来的,也就是一致性协议.具体如下 1):当主节点挂了后,副本集会获得其他从节点的最后更新时间与主服务做对比 2):如果所有从节点的最后更新时间都是很旧,那就选举停…
一.为什么要配置mongodb的主从: 1.做主从,可以说是做数据的备份,有利于故障的恢复 2.做主从,可以做到读写分离,主节点负责写操作,从节点负责读操作,这样就把读写压力分开,保证系统的稳定性. 二.主从服务器的实现原理 首先,主节点会把本服务的与写有关的操作记录下来,读操来不记录,这些操作就记录在local数据库中的oplog.$admin这个集合中,这是一个固定集合,大小是可以配置的,主要是通过配置oplogSize这个参数来实现,单位是M,大小一般为磁盘剩余空间的5%左右.因为是固定集…
一.前言 虽然MongoDB官方已经不建议使用主从模式了,但是 熟悉下 也是有用的,替代方案是采用副本集的模式.slave默认情况下是不支持读写的,但是master会把数据同步到slave,不支持客户端读写.客户端连接slave时用命令支持读:rs.slaveOk(). 二.主从配置 1.进入到 /usr/java 中,cd /usr/java 2.新建mongodbMaster-slave,mkdir  mongodbMaster-slave 3.进入到 mongodbMaster-slave…
Mongodb的开启   默认启动:   $ ./mongodb   默认数据保存路径:/data/db/ 默认端口:27017   修改默认路径:   --dbpath $ ./mongdb --dbpath /mongodb/ 把数据存储位置指向一个自己的目录/mongodb/   修改默认端口:   --port $ ./mongdb --port 20111 把服务端口修改为20111,这个一方面是为了安全,使用默认端口容易被一些恶意的人发现做手脚   启动后台服务:   --fork…
mongoDB主从配置如下: 主库: port=27017 dbpath=/usr/local/mongodb/data logpath=/usr/local/mongodb/log/mongodb.log fork=true ##后台运行 master=true 从库: port=27018 dbpath=/usr/local/mongodb/slave/data/ logpath=/usr/local/mongodb/slave/log/mongodb.log fork=true ##后台运…
1. 启动服务器 1.1 启动配置服务器 配置服务器是集群的大脑,保存着关于每个服务器包含哪些数据的所有元数据,因此,必须首先创建配置服务器. 由于资源限制,在同一机器上启动三个进程 # mkdir /home/mongo/cs1 # mkdir /home/mongo/cs2 # mkdir /home/mongo/cs3 # mongod --configsvr --replSet configRS --bind_ip localhost --port 27038 --dbpath /hom…
今天我测试了一下MongoDB的副本集的配置. 首先从概念上说一下MongoDB副本集和主从复制的区别.其实副本集(Replica Set)是主从复制的高级形式.高级在哪里呢?主动复制实现了数据备份+读扩展,但是master一旦down掉,需要手动启动slave.副本集在此基础上实现了备份自动重启的功能,也就是某一台slave会挺身而出,担当起master的职责.所以有三个角色,master(Primary),slave(Secondary),还有仲裁服务器(这哥们指定哪台slave应该挺身而出…
在local库中不仅有主从日志 oplog集合,还有一个集合用于记录主从配置信息 system.replset: > use local > show collections > db.system.replset.find() rs1:PRIMARY> use localuse local switched to db local rs1:PRIMARY> show collectionsshow collections me oplog.rs replset.electi…
目前我正在进行MongoDB的双机热备方面相关的工作.根据我目前看到的MongoDB方面的材料,MongoDB的实际部署有三种方式,分别是“主动复制”,“副本集”以及“分片副本集”. 首先我们从最简单的开始,也就是先来做“主从备份”. 首先明确我只是测试,测试觉得不错会部署在我们的项目的服务器上面.介绍一下我的testbed,三个虚拟机,安装的都是ubuntu12.10的x86_64的服务器版操作系统.分别叫“MongoDBMaster”“MongoDBSlave1”“MongoDBSlave2…
1. 什么是副本集 副本集就是mongoDB副本所组成的一个集群. 同期原理是,写操作发生在主库,从库同步主库的OpLog日志. 集群中没有特定的主库,主库是选举产生,如果主库down了,会再选举出一台主库. mongoDB也可以配置成主从模式,但,官方已经不建议使用主从模式了,替代方案是采用副本集的模式. 副本集有以下特点: 1. 最小构成是:primary,secondary,arbiter,一般部署是:primary,2 secondary. 2. 成员数应该为奇数,如果为偶数的情况下添加…