mongodb(副本集)

时间:2021-11-13 00:37:00

副本集是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()命令查询,反馈如下:

mongodb(副本集)

即20000端口为主几点,10000端口为副本节点

4、测试

我们登陆主节点,进行数据写入:

mongodb(副本集)

进入从节点查询:

备注:必须开启从节点读取权限,命令如下

mongodb(副本集)

我们可以在节点的local数据库中找到oplog记录:

mongodb(副本集)