mongodb3.6 複本集(三)假期第一天——第二篇文章 mongodb 如何做資料備災

來源:互聯網
上載者:User

標籤:手動   pos   blog   不同的   理解   mongodb   技術分享   ast   primary   

前言

 個人理解,複本集一個主要作用就是當Master庫出現故障,其中的一個salve從庫會被選舉出來成為新的Master。架構圖如下:

 

其中,選舉者是不參與資料存放區的,它的作用只是為了選舉出新的Master。當原Master恢複後,他也只會以從庫salve身份加入到複本集中。

當然,我們也可以在恢複啟動它的時候手動設定priority參數,讓他成為Master。

Demo

下面通過具體的例子說明。

首先在mongo目錄下建立3個(一個作為master,一個作為從庫,一個作為選舉者,在實際項目中,這三個服務最後放在不同的伺服器上)設定檔,檔案內容如下:

Master

#配置mongodb資料的儲存路徑
dbpath=D:\mongodb\data\rs1
#配置mongodb記錄檔
logpath=D:\mongodb\log\rs1.log
#配置連接埠,若不配置,預設27017連接埠
port=40001
#複本集名字,每個設定檔中需保持一致
replSet=rs_test

Salve
#配置mongodb資料的儲存路徑dbpath=D:\mongodb\data\rs2#配置mongodb記錄檔logpath=D:\mongodb\log\rs2.log#配置連接埠,若不配置,預設27017連接埠port=40002#複本集名字,每個設定檔中需保持一致replSet=rs_test
選舉者設定檔

#配置mongodb資料的儲存路徑
dbpath=D:\mongodb\data\rs3
#配置mongodb記錄檔
logpath=D:\mongodb\log\rs3.log
#配置連接埠,若不配置,預設27017連接埠
port=40003
#複本集名字,每個設定檔中需保持一致
replSet=rs_test

 啟動三個mongodb執行個體

首先,在bin 目錄下開啟三個shell視窗,分別啟動上面配置的三個mongodb,如下命令:

mongod -f d:\mongodb\rs1.conf  

若是都啟動成功,我們將會在記錄檔中看到主要的資訊:

waiting for connections on port 40003

其次,串連配置在40001連接埠的mongodb執行個體:

mongo -port 40001

初始化40001 為master:

rs.initiate()

初始化成功,使用命令rs.status() 查看複本集狀態,將會看到如:

可以看到40001已經作為primary 啟動。

再次,執行命令 rs.add("127.0.0.1:40002")  添加從庫。

添加選舉者:rs.addArb("127.0.0.1:40003") 

再次執行 rs.status() 查看複本集的狀態,將會看到如:

 

驗證 選舉

關閉40001 服務端視窗(故障停機),在40002視窗執行 rs.status(),將會看到如:

 

最後,再次啟用40001 服務端,在bin 下 執行  mongod -f d:\mongodb\rs1.conf

然後 再次查看狀態 rs.status() ,可以看到40001已經重新加入到複本集並且是作為從庫加入的,如:

 

 關於mongodb 複本集就介紹到這裡,希望對大家有協助。文中如有不對的地方,歡迎指出。

謝謝。 

 

mongodb3.6 複本集(三)假期第一天——第二篇文章 mongodb 如何做資料備災

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.