搭建MongoDB主從複製(Master-Slave)集

來源:互聯網
上載者:User

  主從複製是MongoDB資料庫一種特性,它通過資料備份來提高資料庫的容災能力。但是由於主從複製並不能自動實現容錯移轉的特性,MongoDB在1.6版本開發了新的複製模式:Replicate Sets。MongoDB建議不要再使用Master-Slave模式對資料進行備份。但是對於學習來說,我們仍可以瞭解一下MongoDB的主從複製模式。
  1. 從MongoDB官網下載最新版的MongoDB,解壓到某個目錄。
  2.在MongoDB檔案夾下,建立/data/master和/data/slave目錄。
  3.啟動主節點(Master)的伺服器,運行下面的命令:

mongod --dbpath /data/master --port 10000 --master

  執行完上面的命令後,mongodb會在data/master下產生資料檔案和記錄檔。
  4.啟動從節點(Slave)的伺服器,運行下面的命令:

mongod --dbpath /data/slave --port 10001 --slave --source localhost:10000

  執行完上面命令後,同樣會在data/slave下產生資料檔案和記錄檔,並在local資料庫下的sources表下建立與master的關聯資訊。

  5.測試主從複製(Master-Slave)是否生效。
  使用“mongo localhost:10000”開啟Master資料庫,插入一條測試語句:  db.test.find();  db.test.insert({“host”:“1000”});  db.test.find();      使用“mongo localhost:10001”開啟Slave資料庫,運行db.test.find()會發現查詢出來的資料與從Master資料庫中查詢的資料相同。
  運行db.test.insert({"girl":"lili"}); 則會顯示not master。這是因為主從複製模式只允許從Master資料庫更新資料,而不允許從Slave資料庫更新資料。正因此,當Master發生故障時,從節點無法轉換為主節點的劣勢就暴漏了出來。
    

相關文章

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.