mongodb 配置Replica Set

有两个主机,180和179,打算在180上跑一个primary和arbiter,在179上跑secondary。流程如下:

1.  删除库目录mongoTest下的local目录 ,启动180 

./mongod --port 30000 --directoryperdb --logappend  --logpath /data/mongoTest/log --fork  --dbpath /data/mongoTest --replSet mydb

2.  启动180的arbiter


./mongod --port 30001 --directoryperdb --logappend  --logpath /data/mongoTestArbiter/log --fork  --dbpath /data/mongoTestArbiter --replSet mydb
3.   启动179的secondary


./mongod --port 30000 --directoryperdb --logappend  --logpath /data/mongoTest/log --fork  --dbpath /data/mongoTest --replSet mydb



4. 在180上运行


./mongo --port 30000
5.  进入mongo连接后,执行



cfg = { _id: "mydb", members: [ {_id:0,  host: "15.32.9.180:30000"} ] }
rs.initiate(cfg)

6.  添加primary到集群
rs.add("15.232.9.180:30000")

7.  添加arbiter到集群

rs.addArb("15.32.9.180:30001")    //  为albiter

8.  添加179的secondary到集群

rs.add("15.232.9.179:30000")

9.  执行以下命令,查看集群情况


rs.status()


如果需要主从切换,执行以下语句即可

cfg = rs.conf()
cfg.members[0].priority =80
cfg.members[2].priority =90  //序号为什么是2?因为1是arbiter,值越高,权限越高
rs.reconfig(cfg)





你可能感兴趣的:(mongodb,set,replica,replset)