溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

mongoDB中如何搭建主從復(fù)制

發(fā)布時(shí)間:2021-07-19 11:36:48 來(lái)源:億速云 閱讀:235 作者:Leah 欄目:MongoDB數(shù)據(jù)庫(kù)

mongoDB中如何搭建主從復(fù)制,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

詳解mongoDB主從復(fù)制搭建詳細(xì)過(guò)程

主 192.168.0.4 
從 192.168.0.7

mongodb的安裝

1: 下載mongodb www.mongodb.org 下載最新的stable版

查看自己服務(wù)器 適合哪個(gè)種方式下載(wget 不可以的 可以用下面方式下載)

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.5.tgz

curl -O -L https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.5.tgz

2: 解壓文件 不用編譯,本身就是編譯后的二進(jìn)制可執(zhí)行文件.

tar zxvf mongodb-linux-x86_64-rhel62-3.0.5.tgz #解壓

mv mongodb-linux-x86_64-rhel62-3.0.5 /usr/local/mongodb #更改文件夾名字

cd  /usr/local/mongodb/bin

創(chuàng)建兩個(gè)文件夾 存數(shù)據(jù)和日志

mkdir -p /home/map/mongodb/mongo /home/map/mongodb/mlog/

mongodb的bin下各工具的用途:

  • mongod:數(shù)據(jù)庫(kù)服務(wù)端,類(lèi)似mysqld,每個(gè)實(shí)例啟動(dòng)一個(gè)進(jìn)程,可以fork為Daemon運(yùn)行

  • mongo:客戶(hù)端命令行工具,類(lèi)似sqlplus/mysql,其實(shí)也是一個(gè)js解釋器,支持js語(yǔ)法

  • mongodump/mongorestore:將數(shù)據(jù)導(dǎo)入為bson格式的文件/將bson文件恢復(fù)為數(shù)據(jù)庫(kù),類(lèi)似xtracbackup

  • mongoexport/mongoimport:將collection導(dǎo)出為json/csv格式數(shù)據(jù)/將數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù),類(lèi)似- - - mysqldump/mysqlimport

  • bsondump:將bson格式的文件轉(zhuǎn)儲(chǔ)為json格式的數(shù)據(jù)

  • mongos:分片路由,如果使用了sharding功能,則應(yīng)用程序連接的是mongos而不是mongod

  • mongofiles:GridFS管理工具 mongostat:實(shí)時(shí)監(jiān)控工具

主從服務(wù)器配置

vim mongod.conf

主配置如下

port=27018 #指定端口
fork=true #后臺(tái)運(yùn)行
dbpath=/home/map/mongodb/mongo #規(guī)定數(shù)據(jù)庫(kù)的位置
logpath=/home/map/mongodb/mlog/mongodb.log #規(guī)定數(shù)據(jù)庫(kù)的日志文件
master=true #設(shè)置主
# bind_ip=127.0.0.1,192.168.0.4 #允許的地址 為了安全
nohttpinterface=true #禁止http訪(fǎng)問(wèn)

執(zhí)行下面步驟

./mongod -f ./mongod.conf #啟動(dòng)數(shù)據(jù)庫(kù)
./mongo #進(jìn)入數(shù)據(jù)庫(kù)

上面都同理 從服務(wù)器配置

port=27018 #指定端口
fork=true #后臺(tái)運(yùn)行
dbpath=/home/map/mongodb/mongo #規(guī)定數(shù)據(jù)庫(kù)的位置
logpath=/home/map/mongodb/mlog/mongodb.log #規(guī)定數(shù)據(jù)庫(kù)的日志文件
slave=true #聲明從
source=192.168.0.4:27018 #規(guī)定從屬于哪個(gè)ip 注意:ip是主服務(wù)器的 最好用內(nèi)網(wǎng)ip
# bind_ip=127.0.0.1,192.168.0.4 #允許的地址 為了安全
nohttpinterface=true #禁止http訪(fǎng)問(wèn)

執(zhí)行下面步驟

./mongod -f ./mongod.conf #啟動(dòng)數(shù)據(jù)庫(kù)
./mongo #進(jìn)入數(shù)據(jù)庫(kù)

測(cè)試 主執(zhí)行

use word
db.wsd.save({name:”wangshudong”})
db.wsd.find()

在從服務(wù)器執(zhí)行

rs.slaveOk();

show dbs;

local 0.078GB

word  0.078GB #如果出現(xiàn)主的數(shù)據(jù) 說(shuō)明同步成功

use word
db.wsd.find() #查到數(shù)據(jù)說(shuō)明同步成功
{ “_id” : ObjectId(“55cc43470278a3d7b1c6f2c0″), “name” : “wangshudong” }

mongoDB中如何搭建主從復(fù)制

為了安全最后注意從禁止遠(yuǎn)程連接

iptables -I INPUT -s 192.168.0.4 -p tcp --dport 27018 -j ACCEPT#接受來(lái)自192.168.0.4內(nèi)網(wǎng)的ip訪(fǎng)問(wèn)
iptables -A INPUT -i eth0 -p tcp --dport 27018 -j DROP #拒絕所有來(lái)自27018的端口

看完上述內(nèi)容,你們掌握mongoDB中如何搭建主從復(fù)制的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI