windows下MongoDb复制集部署

MongoDb复制集最少三个节点一个主一个从一个监控节点。

1:启动3个cmd

//
mongod --port 29017 --dbpath E:\MongoDB\db29017\data --logpath E:\MongoDB\db29017\log\mongod.log --replSet rs0
//
mongod --port 29018 --dbpath E:\MongoDB\db29018\data --logpath E:\MongoDB\db29018\log\mongod.log --replSet rs0
//监控
mongod --port 29019 --dbpath E:\MongoDB\db29019\data --logpath E:\MongoDB\db29019\log\mongod.log --replSet rs0

 

 2:再启动3个cmd分别登录

//
mongo --port 29017
//
mongo --port 29018
//监控
mongo --port 29019

 

 如此总共6个控制台

3:在29017里面操作,分别执行以下命令

//初始化
rs.initiate({"_id":"rs0",members:[{_id:0,host:"127.0.0.1:29017"},{_id:1,host:"127.0.0.1:29018"},{_id:2,host:"127.0.0.1:29019"}]})
//可以通过isMaster查看是否是主节点和使用rs.status查看状态
rs.isMaster()
rs.status()

4:然后添加从节点和监控节点

//添加从节点
rs.add("127.0.0.1:29018")
//添加监控节点
rs.addArb("127.0.0.1:29019")

5:将主节点服务关闭,过一会再29018上执行rs.isMaster() 、rs.status()都行会发现原先的从节点变成了主节点,而等29017回复之后会变成从节点

 

 

 

 

 

 7:再做数据同步

主库执行:

 db.userinfo.insert({"id":1,"name":"fanlin"});

然后在从库获取:

db.userinfo.find()

会发现报错

 

 此时只需要在从库执行以下指令就行了

 rs.slaveOk()

 

 以上!

 

posted @ 2022-03-16 19:29  游园惊梦、  阅读(57)  评论(0编辑  收藏  举报