【MongoDB】 windows下建立雙機主從

來源:互聯網
上載者:User

標籤:拒絕   master   delay   主從配置   日誌   3.2   建議   為我   資料   

【雙機配置】

服務端:

    兩台 Dell R730 雙路E5 伺服器

    使用一個內網環境,網段20, ping 測試互連

    主服ip: 192.168.20.176: 27017

    從服ip: 192.168.20.178: 27015

用戶端: ThinkPad T460P

 

【系統內容】

服務端: windows Server 2012 R2

用戶端: Win10

MongoDB版本 3.2.10

【檔案夾建立】

雙機主從配置建議將雙機的檔案夾配置保持一致,但是對mongoDB的配置來講這個可以不那麼重視。

花了5分鐘學習,發現其實就是給定一個時間從機向主機請求同步而已。同步的內部機制等空一點研究源碼。

 

這裡我的檔案夾建立是 D:\Mongos\ 作為整個MongoDB的根目錄,資料目錄暫時也放在這下。

資料目錄: .\DB\   主服的資料放在這檔案夾下 .\Master , 從服的資料對應為  .\Slave

日誌在 .\Log\下

 

【指令碼和運行效果】

mongoDB的配置指令碼非常簡單,這裡給出命令即可

先來主服的, 務必使用 --master進行標記。

.\Mongod.exe --dbpath [your path] --master -- port 27017

從服:

.\mongod.exe --slave --dbpath [your Path] --source 192.168.20.176 --port 27015 --slavedelay 5

其中 slavedelay指定從服每多少秒執行一次同步。

 

運行效果

主服:

啟動成功

需要說明一下,最下面一條資訊是從服啟動後建立了到主服的串連,所以有一個Connection accepted。

 

接下來是從服:

可以看到最下面一組紅框的資訊是每5s出現一次,代表在同步主服的資訊。

【啟動主備服務】

主服上運行 mongo.exe, 自動連接到 test, 這個和單機是一樣的。

等了很久,沒有看到mongo shell出現,說明啟動沒成功。

據說第一次啟動很慢,不知道是有多慢

等了挺久,突然好了。

之前幾個用戶端都沒法訪問到,下次測試一下什麼原因。

 

從服上同樣啟動mongo.exe,不過要指定一下從服的連接埠,即27015

這裡是為了測試同步是否成功,所以訪問本地的test。

 

【同步測試】

寫資料的一方從用戶端(ThinkPad上)操作,然後分別在兩個伺服器用戶端上讀一次看是否同步。
為了便於區分,在一次寫操作後先讀一次從服,5s後再讀一次。

用戶端的寫操作對主服進行。

插入操作很簡單,我們在test下操作即可 【該命令由用戶端發送】

可以看到查詢結果是正確的。

我們在從服上執行find()命令:

可以看到之前是報錯了的。

實際上主從模式下,從服僅僅作為備份,是不允許直接存取和操作的。但是我們可以給從服配置一個讀許可權,即 rs.slaveOk()

之後就能查詢了。 兩條記錄是因為我在主服下開的用戶端也執行了一個查詢。

到此可證明主從部署建立成功。

 

【待解決】

最後遇到一些問題:

按官方說法,我應該是能從用戶端(另一台pc)通過指定ip和連接埠的形式訪問從服的,因為從服自己也是這麼訪問的。

然而我的串連請求卻被從服拒絕了,有點奇怪。

 

【MongoDB】 windows下建立雙機主從

聯繫我們

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