mongo副本集搭建

searok發表於2018-11-13

副本集安裝

1. 解壓下載的壓縮包:

$ tar -zxvf mongodb-linux-x86_64-3.4.17.tgz

下載地址連結:pan.baidu.com/s/1mmcyWpri… 提取碼:onfo  

2. 更改資料夾名稱

$ mv mongodb-linux-x86_64-3.4.17.tgz mongodb27107

3. 建立資料庫目錄,配置檔案目錄,日誌目錄

$ mkdir -p mongodb27107/data/db

$ mkdir -p mongodb27107/config

4. 建立mongo.conf配置檔案

$ touch mongo.conf

新增以下配置內容

dbpath= /home/mvtech/mongodb27017/data/db/ #資料存放目錄

logpath=/home/mvtech/mongodb27017/data/mongo.log #日誌檔案目錄

pidfilepath=/home/mvtech/mongodb27017/data/mongo.pid #pid埠檔案

port=27017 #mongodb埠

logappend=true #追加方式寫日誌檔案,預設false,進行覆蓋

fork=true #後臺執行

journal=true #啟用日誌選項,MongoDB的資料操作將會寫入到journal資料夾的檔案裡

oplogSize=2048 #同步操作記錄檔案大小(MB)

smallfiles=true #使用較小的預設檔案

replSet=heatdb #副本集名稱,同一個副本集,名稱必須一致

5. 將mongodb27107整個資料夾複製多份,相當於是多個mongo例項

6. 修改所有複製例項中的mongo.conf檔案,將相關路徑修改為對應的路徑。

7. 啟動mongo例項,進入bin目錄下

$ mongod –f /home/mvtech/mongodb27017/config/mongo.conf

啟動其他mongo例項參考上面的命令,修改路徑

mongo副本集搭建

8. 使用mong連線資料庫,進行服務,

$ ./mongo 訪問預設埠27017

$ ./mongo –port 27018 訪問非預設埠

9. 初始化副本集配置

副本整合員配置

cfg = {

_id: "mongoSet", # 副本集名稱 和配置檔案中一致

members: [{

_id: 0,

host: '172.18.247.114: 27018', # 副本整合員 ip:埠

priority: 1 #副本整合員 優先順序

},

{

_id: 1,

host: '172.18.247.113: 27017',

priority: 1

},

{

_id: 2,

host: '172.18.247.113: 27018',

priority: 1

}]

};

初始化配置檔案

rs.initiate(cfg);

10. 查詢副本集狀態

$ rs.status()

mongo副本集搭建

11. 進行secondary節點

$ ./mongo –host IP –port 埠號

$ ./mongo –host 172.18.247.114 –port 27018

mongo副本集搭建

12. 在secondary節點中執行命令會出現"errmsg" : "not master and slaveOk=false"的提示,這是因為從節點沒有讀許可權,需要執行以下命令

$ rs.slaveOk();

13. 副本集常用操作

www.cnblogs.com/ivictor/p/6…



相關文章