Mongodb主從複製/ 複本集/分區叢集介紹

來源:互聯網
上載者:User
Mongodb主從複製/ 複本集/分區叢集介紹

前面的文章介紹了Mongodb的安裝使用,在 MongoDB 中,有兩種資料冗餘方式,一種 是 Master-Slave 模式(主從複製),一種是 Replica Sets 模式(複本集)。

Mongodb一共有三種叢集搭建的方式:Replica Set(複本集)、Sharding(切片)Master-Slaver(主從)【目前已不推薦使用了。。。】其中,Sharding叢集也是三種叢集中最複雜的。複本集比起主從可以實現容錯移轉。。非常使用。mongoDB目前已不推薦使用主從模式,取而代之的是複本集模式。複本集其實一種互為主從的關係,可理解為主主。複本集指將資料複製,多份儲存,不同伺服器儲存同一份資料,在出現故障時自動切換。對應的是資料冗餘、備份、鏡像、讀寫分離、高可用性等關鍵詞;而分區則指為處理大量資料,將資料分開儲存,不同伺服器儲存不同的資料,它們的資料總和即為整個資料集。追求的是高效能。在生產環境中,通常是這兩種技術結合使用,分區+複本集。

一、先說說mongodb主從複製配置

主從複製是MongoDB最常用的複製方式,也是一個簡單的資料庫同步備份的叢集技術,這種方式很靈活.可用於備份,故障恢複,讀擴充等. 最基本的設定方式就是建立一個主節點和一個或多個從節點,每個從節點要知道主節點的地址。採用雙機備份後主節點掛掉了後從節點可以接替主機繼續服務。所以這種模式比單節點的高可用性要好很多。

 配置主從複製的注意點

1)在資料庫叢集中要明確的知道誰是主伺服器,主伺服器只有一台.2)從伺服器要知道自己的資料來源也就是對應的主服務是誰.3)--master用來確定主伺服器,--slave 和 --source 來控制從伺服器

可以在mongodb.conf設定檔裡指明主從關係,這樣啟動mongodb的時候只要跟上設定檔就行,就不需要通過--master和--slave來指明主從了。

下面簡單記錄下Mongodb主從複製的部署過程

1)機器環境182.48.115.238    master-node182.48.115.236    slave-node兩台機器都關閉防火牆和selinuxmongodb的安裝參考:http://www.cnblogs.com/kevingrace/p/5752382.html2)主從配置.............master-node節點配置.............[root@master-node ~]# vim /usr/local/mongodb/mongodb.confport=27017bind_ip = 182.48.115.238dbpath=/usr/local/mongodb/datalogpath=/usr/local/mongodb/log/mongo.loglogappend=truejournal = truefork = truemaster = true        //確定自己是主伺服器[root@master-node ~]# nohup /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf &[root@master-node ~]# ps -ef|grep mongodbroot     15707 15514 23 16:45 pts/2    00:00:00 /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.confroot     15736 15514  0 16:45 pts/2    00:00:00 grep mongodb[root@master-node ~]# lsof -i:27017COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAMEmongod  15707 root    7u  IPv4 153114      0t0  TCP 182.48.115.238:27017 (LISTEN)由於mongodb.conf裡綁定了原生ip地址182.48.115.238,所以串連mongodb的時候必須用這個ip地址,不能使用預設的127.0.0.1,也就是說:[root@master-node ~]# mongo 182.48.115.238:27017     //這樣才能串連mongodb[root@master-node ~]# mongo 或者 mongodb 127.0.0.1:27017    // 這樣不能串連mongodb.............slave-node節點配置.............[root@slave-node ~]# vim /usr/local/mongodb/mongodb.conf port=27017dbpath=/usr/local/mongodb/datalogpath=/usr/local/mongodb/log/mongo.loglogappend=truejournal = truefork = truebind_ip = 182.48.115.236            //確定主要資料庫連接埠source = 182.48.115.238:27017      //確定主要資料庫連接埠slave = true               //確定自己是從伺服器[root@slave-node ~]# nohup /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf &[root@slave-node ~]# ps -ef|grep mongoroot     26290 26126  8 16:47 pts/
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.