Mongodb集羣——副本集

1.環境準備:副本集的集羣模式,至少要求3臺服務器mongodb

 

        由圖能夠看到客戶端鏈接到整個副本集,不關心具體哪一臺機器是否掛掉。主服務器負責整個副本集的讀寫,副本集按期同步數據備份,一但主節點掛掉,副本節點經過心跳機制檢測到後,就會在集羣內發起主節點的選舉機制,自動選舉一位新的主服務器。json

 

2.下載mongodb,分別在3個服務器上安裝服務器

 

3.在mongodb安裝目錄下(如D:/mongodb),新建空文件data,新建log/mongodb.log文件,新建conf/config.properties文件。app

 

4.編寫conf/config.properties文件,配置信息以下:
dbpath=D:\mongodb\datajsonp

logpath=D:\mongodb\log\mongodb.logrem

port=27017   #mongodb端口cmd

logappend=同步

journal=it

jsonp=集羣

serviceName=MongoDB Server   #mongodb服務名

serviceDisplayName=MongoDB Server replSet   #mongodb顯示名稱

auth=false #auth:是否須要驗證;若是須要驗證要改成true

storageEngine=wiredTiger

wiredTigerCacheSizeGB=2

#副本集名稱

replSet=zdvictory

 

5.安裝並啓動服務命令

#安裝服務

D:\mongodb\bin>mongod.exe -config D:\mongodb\conf\config.properties --install

#啓動服務(可打開服務直接手動啓動)

D:\mongodb\bin>mongod.exe --dbpath D:\mongodb\data

 

6.在每臺機中,啓動MongoDB服務,任意選擇一臺機器登陸MongoDB(注意三臺mongodb必須都沒有使用過,即沒有數據,不然將沒法進行集羣)

打開cmd命令窗口

D:\mongodb\bin>mongo --port 27017

> use admin

switched to db admin

> config = {

     "_id":"zdvictory",

     "members":[

         {"_id":0,"host":"192.168.5.161:27017"},

         {"_id":1,"host":"192.168.15.250:27017"},

         {"_id":2,"host":"192.168.88.9:27017"}

     ]

 }

> rs.initiate(config)
{ "ok" : 1 }

 

7.mongodb集羣經常使用命令

D:\mongodb\bin>mongo --port 27017

#查看狀態
zdvictory:PRIMARY>rs.status()

# 在線刪除
zdvictory:PRIMARY> rs.remove("192.168.15.250:27017")

#在線添加節點
zdvictory:PRIMARY> rs.add("192.168.15.250:27017")

#查看配置
zdvictory:PRIMARY> rs.conf()

 

8.最後注意:mongodb集羣只有2/3臺時,才能自動切換主節點(能正常使用),只有一臺時沒法自動切換爲主節點(不能正常使用)

相關文章
相關標籤/搜索