日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Ubuntu18.04下部署MongoDB復制集(副本集)
環(huán)境
操作系統(tǒng):ubuntu 18.04
MongoDB: 4.0.3

成都創(chuàng)新互聯(lián)公司科技有限公司專業(yè)互聯(lián)網(wǎng)基礎服務商,為您提供德陽機房托管,高防主機,成都IDC機房托管,成都主機托管等互聯(lián)網(wǎng)服務。

 

服務器
首先部署3臺服務器,1臺主節(jié)點 + 2臺從節(jié)點

3臺服務器的內(nèi)容ip分別是:
10.140.0.5 (主節(jié)點)
10.140.0.6 (從節(jié)點01)
10.140.0.7 (從節(jié)點02)

 

安裝MongoDB
接下來,需要在每一臺服務器上安裝MongoDB。
完整安裝過程可參考官方文檔。  
為了方便,本文提供MongoDB的一鍵安裝腳本。  

可以到主機寶貝資源站下載:

具體下載目錄在 /2018年資料/11月/3日/Ubuntu 18.04下部署MongoDB復制集(副本集)/

 

切換成root用戶
sudo su -

運行安裝腳本
wget https://gitlab.com/caizhifei2003/scripts/raw/master/install/mongodb/ubuntu-1804.sh
chmod u+x ubuntu-1804.sh
./ubuntu-1804.sh

此時,可以通過mongo命令進入數(shù)據(jù)庫

配置復制集  

設置復制集名稱
 
有兩種方式來設置復制集的名稱。一種是通過mongod命令,另一種是通過修改配置文件。
本文使用通過修改配置文件的方式來設置復制集名稱,確保每次節(jié)點重新啟動后能夠使用相同的配置啟動數(shù)據(jù)庫。

打開MongoDB在Ubuntu上的配置文件
vim /etc/mongod.conf

找到replication配置節(jié)
replication:
    replSetName: "rs0"

綁定MongoDB的IP地址
 
找到net配置節(jié)
net:
    port: 27017
    bindIp: localhost,10.140.0.5這里是主節(jié)點的地址,相應的從節(jié)點要綁定
10.140.0.6
10.140.0.7

保存文件,重新啟動mongod服務
service mongod restart

此時,進入到任何一個節(jié)點。查看復制集狀態(tài)。

初始化復制集
通過mongo shell進入主節(jié)點的數(shù)據(jù)庫
執(zhí)行復制集初始化命令

rs.initiate( {
  _id : "rs0",
  members: [
      { _id: 0, host: "10.140.0.5:27017" },
      { _id: 1, host: "10.140.0.6:27017" },
      { _id: 2, host: "10.140.0.7:27017" }
  ]
})
 

查看復制集狀態(tài)
rs.status()

 

到此,復制集已經(jīng)創(chuàng)建成功。

 

測試數(shù)據(jù)同步

執(zhí)行如下命令,在主節(jié)點上插入一條數(shù)據(jù)

use test
db.test.insertOne({"name": "kenny"})

進入任何一個從節(jié)點,查看數(shù)據(jù)是否被同步。
use test
rs.slaveOk()
db.test.find()

默認情況下,MongoDB只允許在主節(jié)點上寫入和讀取數(shù)據(jù)。這里的rs.slaveOk()是為了在從節(jié)點上也讀取數(shù)據(jù)而需要執(zhí)行的session(如果退出mongo shell,需要重新執(zhí)行該命令)級別的命令。

顯示的內(nèi)容如下:

測試重新選舉主節(jié)點
在3個節(jié)點上分別使用rs.isMaster()命令
10.140.0.5:

10.140.0.6:

10.140.0.7

強制關(guān)閉主節(jié)點上的MongoDB服務
use admin
db.shutdownServer()

在兩個從節(jié)點上,通過rs.isMaster()命令查看狀態(tài)

10.140.0.6:

10.140.0.7:

從上面的運行結(jié)果可以看出,10.140.0.6已經(jīng)被推選成新的主節(jié)點。此時所有服務一切正常。
至此,部署MongoDB復制集的基本操作已經(jīng)完成。

 

總結(jié)
  MongoDB復制集的部署還是比較簡單的,官方文檔也給出了較為詳細的說明。
  同任何其它數(shù)據(jù)庫一樣,MongoDB的副本集也是為了增強數(shù)據(jù)的安全性,避免因為服務器出現(xiàn)異常時,而導致數(shù)據(jù)服務不可用的情況出現(xiàn)。同時,數(shù)據(jù)被完整的保存在多個節(jié)點中,任何一臺服務器的硬盤出現(xiàn)問題,都不會丟失數(shù)據(jù)。但是這里也存在風險,那就是數(shù)據(jù)同步存在時間差,如果還沒有等到數(shù)據(jù)被同步到從節(jié)點,主節(jié)點就當機的話,那么這部分數(shù)據(jù)是無法找回的。
  官方建議的副本集節(jié)點數(shù)量是3個,1個主節(jié)點+2個從節(jié)點?;蛘呤?個主節(jié)點+1個從節(jié)點+1個仲裁節(jié)點。仲裁節(jié)點的作用是在主節(jié)點不可用時,通過算法找到最適合的從節(jié)點成為新的主節(jié)點。不建議將仲裁節(jié)點和數(shù)據(jù)節(jié)點放在同一個服務器上。


新聞名稱:Ubuntu18.04下部署MongoDB復制集(副本集)
標題路徑:http://www.dlmjj.cn/article/djdcoeo.html