副本集是mongo下的一种集群配置方式:
1、通过oplog的方式将主节点数据同步到副本节点,oplog不记录查询语句(因为不改变数据);
2、mongo的副本集可以有一个主节点,多个副本节点,主节点为自动选举出;
本文下述在单机配置一个基本的副本集群,操作系统windows7,mongodb版本2.6.4
1、创建主节点、副本节点数据库文件夹 master/db 和 replset/db
2、启动主节点和副本节点的数据库实例,命令如下:
mongod.exe --dbpath ../master/db --port 10000 --replset repl
mongod.exe --dbpath ../replset/db --port 20000 --replset repl
3、任意登陆一个节点,配置副本
mongo.exe localhost:10000
use admin
config = {_id:"repl",members:[{_id:0,host:"localhost:10000"},{_id:1,host:"localhost:20000"}]}
rs.initiate(config);//配置副本集
配置成功后,可通过rs.status()命令查询,反馈如下:
即20000端口为主几点,10000端口为副本节点
4、测试
我们登陆主节点,进行数据写入:
进入从节点查询:
备注:必须开启从节点读取权限,命令如下
我们可以在节点的local数据库中找到oplog记录: