replicaset

主从复制
1.启动时使用主从复制
(1)启动一个主服务器: mongod --dbpath D:\mongodb\data --master
(2)启动一个从服务器: mongod --dbpath D:\MongoDB\Data_10000 --port 10000  --slave  --source localhost:27017
(3)再启动一个从服务器:mongod --dbpath D:\MongoDB\Data_10001 --port 10001  --slave  --source localhost:27017
发现如下几点:
(1)当主从服务器都启动时,使用shell登录从服务器,然后使用insert,update,remove等对集合操作的方法,都会失败且提示如下:not master.也就是说从服务器不能进行增删改操作
(2)如果从服务器没有任何数据,则启动的时候会将主服务器的数据同步到从服务器(也就是说如果D:\MongoDB\Data_10000是个空目录,则启动的时候会将D:\mongodb\data的文件复制到D:\MongoDB\Data_10000)
(3)如果删除从服务器数据目录的local文件(local.0,local.ns),然后重新启动主服务器和从服务器,发现会将从服务器不存在的数据库由主服务器同步到从服务器,而已经存在的数据库则不同步,即使主服务器和从服务器都包括一个同名数据库但是主服务器拥有而从服务器没有的集合也不会由主服务器同步到从服务器
2.添加,删除数据源
(1)启动一个主服务器: mongod --dbpath D:\mongodb\data --master
(2)启动一个从服务器: mongod --dbpath D:\MongoDB\Data_10000 --port 10000  --slave 
在从服务器的shell中使用入门命令:
use local
db.sources.insert({host:"localhost:27017"})
之后主服务器的每一个操作命令都会同步到从服务器,但启动从服务器之前主服务器拥有的数据不会同步到从服务器
原文地址:https://www.cnblogs.com/mxw09/p/2166850.html