最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MongoDB入門(mén)教程之主從復(fù)制配置詳解

 更新時(shí)間:2014年08月18日 10:12:02   投稿:junjie  
這篇文章主要介紹了MongoDB入門(mén)教程之主從復(fù)制配置詳解,本文環(huán)境是windows+MongoDB,操作部分使用圖片來(lái)講解,需要的朋友可以參考下

    從這一篇開(kāi)始我們主要討論mongodb的部署技術(shù)。

    我們知道sql server能夠做到讀寫(xiě)分離,雙機(jī)熱備份和集群部署,當(dāng)然mongodb也能做到,實(shí)際應(yīng)用中我們不希望數(shù)據(jù)庫(kù)采用單點(diǎn)部署,

如果碰到數(shù)據(jù)庫(kù)宕機(jī)或者被毀滅性破壞那是多么的糟糕。

 一:主從復(fù)制

1: 首先看看模型圖

  2: 從上面的圖形中我們可以分析出這種架構(gòu)有如下的好處:

     <1>  數(shù)據(jù)備份。

     <2>  數(shù)據(jù)恢復(fù)。

     <3>  讀寫(xiě)分離。

 3:下面我們就一一實(shí)踐

     實(shí)際應(yīng)用中我們肯定是多服務(wù)器部署,限于自己懶的裝虛擬機(jī),就在一臺(tái)機(jī)器上實(shí)踐了。

第一步:我們把mongodb文件夾放在D盤(pán)和E盤(pán),模擬放在多服務(wù)器上。

第二步:?jiǎn)?dòng)D盤(pán)上的mongodb,把該數(shù)據(jù)庫(kù)指定為主數(shù)據(jù)庫(kù),其實(shí)命令很簡(jiǎn)單:>mongodb --dbpath='XXX' --master,

           端口還是默認(rèn)的27017.

第三步:同樣的方式啟動(dòng)E盤(pán)上的mongodb,指定該數(shù)據(jù)庫(kù)為從屬數(shù)據(jù)庫(kù),命令也很簡(jiǎn)單,當(dāng)然我們要換一個(gè)端口,比如:8888。

source 表示主數(shù)據(jù)庫(kù)的地址。

復(fù)制代碼 代碼如下:

>mongod --dbpath=xxxx --port=8888 --slave --source=127.0.0.1:27017

第四步:從圖中的紅色區(qū)域我們發(fā)現(xiàn)了一條:“applied 1 operations"這樣的語(yǔ)句,并且發(fā)生的時(shí)間相隔10s,也就說(shuō)明從屬數(shù)據(jù)庫(kù)每10s

           就向主數(shù)據(jù)庫(kù)同步數(shù)據(jù),同步依據(jù)也就是尋找主數(shù)據(jù)庫(kù)的”O(jiān)pLog“日志,可以在圖中紅色區(qū)域內(nèi)發(fā)現(xiàn)”sync_pullOpLog“字樣。

           接下來(lái)我們要做的就是測(cè)試,驚訝的發(fā)現(xiàn)數(shù)據(jù)已經(jīng)同步更新,爽啊。

 4:  如果我還想增加一臺(tái)從屬數(shù)據(jù)庫(kù),但是我不想在啟動(dòng)時(shí)就指定,而是后期指定,那么mongodb可否做的到呢?答案肯定是可以的。

      我們的主或者從屬數(shù)據(jù)庫(kù)中都有一個(gè)叫做local的集合,主要是用于存放內(nèi)部復(fù)制信息。

      好,那么我們就試一下,我在F盤(pán)再拷貝一份mongodb的運(yùn)行程序,cmd窗口好多啊,大家不要搞亂了。

    

    看上面的log,提示沒(méi)有主數(shù)據(jù)庫(kù),沒(méi)關(guān)系,某一天我們良心發(fā)現(xiàn),給他后期補(bǔ)貼一下,哈哈,再開(kāi)一個(gè)cmd窗口,語(yǔ)句也就是

    在sources中add一個(gè)host地址,最后發(fā)現(xiàn)數(shù)據(jù)也同步到127.0.0.1:5555這臺(tái)從屬數(shù)據(jù)庫(kù)中....

    

 5: 讀寫(xiě)分離

     這種手段在大一點(diǎn)的架構(gòu)中都有實(shí)現(xiàn),在mongodb中其實(shí)很簡(jiǎn)單,在默認(rèn)的情況下,從屬數(shù)據(jù)庫(kù)不支持?jǐn)?shù)據(jù)的讀取,但是沒(méi)關(guān)系,

在驅(qū)動(dòng)中給我們提供了一個(gè)叫做“slaveOkay"來(lái)讓我們可以顯示的讀取從屬數(shù)據(jù)庫(kù)來(lái)減輕主數(shù)據(jù)庫(kù)的性能壓力,這里就不演示了。

 二:副本集

    這個(gè)也是很牛X的主從集群,不過(guò)跟上面的集群還是有兩點(diǎn)區(qū)別的。

      <1>:  該集群沒(méi)有特定的主數(shù)據(jù)庫(kù)。

      <2>:  如果哪個(gè)主數(shù)據(jù)庫(kù)宕機(jī)了,集群中就會(huì)推選出一個(gè)從屬數(shù)據(jù)庫(kù)作為主數(shù)據(jù)庫(kù)頂上,這就具備了自動(dòng)故障恢復(fù)功能,很牛X的啊。

  好,我們現(xiàn)在就來(lái)試一下,首先把所有的cmd窗口關(guān)掉重新來(lái),清掉db下的所有文件。

 第一步:  既然我們要建立集群,就得取個(gè)集群名字,這里就取我們的公司名shopex, --replSet表示讓服務(wù)器知道shopex下還有其他數(shù)據(jù)庫(kù),

            這里就把D盤(pán)里面的mongodb程序打開(kāi),端口為2222。指定端口為3333是shopex集群下的另一個(gè)數(shù)據(jù)庫(kù)服務(wù)器。

 第二步:  既然上面說(shuō)3333是另一個(gè)數(shù)據(jù)庫(kù)服務(wù)器,不要急,現(xiàn)在就來(lái)開(kāi),這里把E盤(pán)的mongodb程序打開(kāi)。

 第三步:  ok,看看上面的日志紅色區(qū)域,似乎我們還沒(méi)有做完,是的,log信息告訴我們要初始化一下“副本集“,既然日志這么說(shuō),那我也就

             這么做,隨便連接一下哪個(gè)服務(wù)器都行,不過(guò)一定要進(jìn)入admin集合。

 第四步: 開(kāi)啟成功后,我們要看看誰(shuí)才能成為主數(shù)據(jù)庫(kù)服務(wù)器,可以看到端口為2222的已經(jīng)成為主數(shù)據(jù)庫(kù)服務(wù)器。

 第五步:我們知道sql server里面有一個(gè)叫做仲裁服務(wù)器,那么mongodb中也是有的,跟sql server一樣,仲裁只參與投票選舉,這里我們

           把F盤(pán)的mongodb作為仲裁服務(wù)器,然后指定shopex集群中的任一個(gè)服務(wù)器端口,這里就指定2222。

 然后我們?cè)赼dmin集合中使用rs.addArb()追加即可。

追加好了之后,我們使用rs.status()來(lái)查看下集群中的服務(wù)器狀態(tài),圖中我們可以清楚的看到誰(shuí)是主,還是從,還是仲裁。

 不是說(shuō)該集群有自動(dòng)故障恢復(fù)嗎?那么我們就可以來(lái)試一下,在2222端口的cmd服務(wù)器按Ctrl+C來(lái)KO掉該服務(wù)器,立馬我們發(fā)現(xiàn)

在3333端口的從屬服務(wù)器即可頂上,最后大家也可以再次使用rs.status()來(lái)看下集群中服務(wù)器的狀態(tài)。

相關(guān)文章

  • MongoDB中的加減乘除運(yùn)算詳解

    MongoDB中的加減乘除運(yùn)算詳解

    這篇文章主要給大家介紹了關(guān)于MongoDB中加減乘除運(yùn)算的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • MongoDB的chunk詳解

    MongoDB的chunk詳解

    這篇文章主要介紹了MongoDB的chunk的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)使用MongoDB數(shù)據(jù)庫(kù),感興趣的朋友可以了解下
    2021-04-04
  • Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境詳解

    Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境詳解

    這篇文章主要給大家介紹了在Windows系統(tǒng)下安裝MongoDB與Robomongo環(huán)境的相關(guān)資料,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-04-04
  • 淺談MongoDB 關(guān)系

    淺談MongoDB 關(guān)系

    這篇文章主要介紹了MongoDB 關(guān)系的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Mongodb使用索引進(jìn)行查詢優(yōu)化的操作方法

    Mongodb使用索引進(jìn)行查詢優(yōu)化的操作方法

    為集合建立合適的索引,能夠有效的減少查詢操作時(shí)掃描數(shù)據(jù)的數(shù)量 ,從而提高查詢效率,簡(jiǎn)化了mongodb內(nèi)部查詢工作,這篇文章主要介紹了Mongodb使用索引進(jìn)行查詢優(yōu)化的操作方法,需要的朋友可以參考下
    2024-06-06
  • MongoDB系列教程(七):MongoDb數(shù)據(jù)結(jié)構(gòu)詳解

    MongoDB系列教程(七):MongoDb數(shù)據(jù)結(jié)構(gòu)詳解

    這篇文章主要介紹了MongoDB系列教程(七):MongoDb數(shù)據(jù)結(jié)構(gòu)詳解,本文講解了Collections、Document、GridFS等3種數(shù)據(jù)結(jié)構(gòu),需要的朋友可以參考下
    2015-05-05
  • Windows下MongoDb簡(jiǎn)單配置教程

    Windows下MongoDb簡(jiǎn)單配置教程

    這篇文章主要為大家詳細(xì)介紹了Windows下MongoDb簡(jiǎn)單配置的教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • MongoDB集合中的文檔管理

    MongoDB集合中的文檔管理

    這篇文章介紹了MongoDB集合中文檔的管理方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • Mongodb 用戶權(quán)限管理及配置詳解

    Mongodb 用戶權(quán)限管理及配置詳解

    這篇文章主要介紹了Mongodb 用戶權(quán)限管理及配置詳解,包括Mongodb訪問(wèn)控制配置,Mongodb開(kāi)啟權(quán)限驗(yàn)證,Mongodb賬戶創(chuàng)建,Mongodb賬戶管理命令需要的朋友可以參考下
    2023-01-01
  • MongoDB為什么比Mysql快原理解析

    MongoDB為什么比Mysql快原理解析

    這篇文章主要為大家介紹了MongoDB為什么比Mysql快原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03

最新評(píng)論

慈溪市| 广州市| 闽清县| 广平县| 克山县| 平谷区| 墨竹工卡县| 青海省| 镇坪县| 平乐县| 南陵县| 应用必备| 尼玛县| 武义县| 昭苏县| 贵溪市| 镇康县| 台东县| 平顶山市| 聂拉木县| 右玉县| 黎城县| 霍州市| 卢龙县| 乌拉特前旗| 工布江达县| 台东市| 临夏县| 青铜峡市| 静乐县| 延长县| 昌乐县| 南阳市| 宁海县| 定结县| 临邑县| 航空| 涟源市| 五原县| 那坡县| 通州市|