MongoDB副本集分片集搭建記錄

2021-08-11 10:23:36 字數 2901 閱讀 2026

mongodb副本集分片集搭建記錄

1  準備工作

關閉selinux和防火牆

vim hosts檔案

192.168.2.171

192.168.2.172

192.168.2.173

192.168.2.58

192.168.2.160

192.168.2.161

192.168.2.169

192.168.2.183

192.168.2.219

192.168.1.110

192.168.1.111

192.168.1.112

2  安裝mongodb(

重要:同乙個mongodb集群所有的

mongo

版本必須一致,否則會報錯)

①yum安裝

在/etc/yum.repos.d/下邊寫

mongodb

的repo源

[mongodb-org-3.2]

name=mongodb repository

baseurl=

gpgcheck=1

enabled=1

gpgkey=

#yum install mongodb-org -y

修改配置檔案

#vim /etc/mongod.conf

新增replsetname  修改ip

#service mongod start               ####啟動

mongodb

#mongo 192.168.2.183:27017    ####登入

mongo

②原始碼安裝

#tar zxvf mongodb-linux-x86_64-rhel62-3.4.10.tar.gz

#mv mongodb-linux-x86_64-rhel62-3.4.10  /usr/local/mongo

#mkdir /usr/local/mongo/

#touch /usr/local/mongo/log/mongo.log

#vi /etc/profile               ####將

mongo

命令加入到環境變數中

export path=/usr/local/mongo/bin:$path                 ####在最下新增這一行

#source /etc/profile

#mongo  --replset dajiuzi --dbpath /usr/local/mongo/data  --port 27017  --logpath /usr/local/mongo/log/mongo.log  --fork

引數解釋:--replset 指定副本集的名字,並且開啟副本集功能

--dbpath  

資料存放路徑   

--port

指定埠  

--logpath  

日誌檔案存放路徑    

--fork

後台執行

#mongo    #####登入

mongo

3  配置副本集

上面安裝時已經做好了副本集的配置檔案(適用於yum安裝)和引數指定(適用於原始碼安裝),所以只要登入進

mongo

進行配置就可以了

mongo>config =

mongo>config.members.push()

mongo>config.members.push()

mongo>config.members.push()

mongo>rs.initiate(config)

mongo>rs.status()

此時副本集配置成功

跨網段新增節點

mongo>rs.add(「192.168.2.148:27017」)   ####輸另乙個網段的公網

ip和對映出去的埠

mongo>rs.remove(「192.168.2.148:27017」)   ####刪除節點

4  分片集搭建

分片集需要用到mongos和

sharding

的configsvr功能

在每個副本集機器上建立乙個config server 和

mongos

搭建config server副本集

#mongo --configsvr  --replset dajiuzi --dbpath /usr/local/mongo/data  --port 27017  --logpath /usr/local/mongo/log/mongo.log  --fork

mongo內部配置和副本集配置一樣

config server

也是乙個副本集

配置mongos

#mongos  --configdb dajiuzi/192.168.2.169:28000,192.168.2.183:28000,192.168.2.219:28000  --port 28000  --logpath /usr/local/mongo/log/mongos.log  --fork   ####mongos不需要資料存放路徑,只是控制節點

,--configdb

引數是config server的ip

#mongo 192.168.2.169:28000

mongos>sh.addshard("dajiuzi/192.168.2.171:27017")

mongos>sh.addshard("dabiaoge/192.168.2.58:27017")

mongos>sh.addshard("daxiongdi/192.168.2.148:27017")

mongos>sh.status()

sharding version:

mongodb 集群搭建 分片 副本集

mkdir p home mongodb conf mkdir p home mongodb mongos log mkdir p home mongodb config data mkdir p home mongodb config log mkdir p home mongodb shard1...

mongodb 3 4 集群搭建 分片 副本集

集群搭建 分片 副本集 概述 背景mongodb 在replica set 每個從節點上面的資料庫均是對資料庫的全量拷貝,從節點壓力在高併發大資料量的場景下存在很大挑戰,同時考慮到後期 mongodb 集群的在資料壓力巨大時的擴充套件性,應對海量資料引出了分片機制。分片概念 mongos 的路由程序...

mongodb副本集搭建

三颱機器搭建mongodb副本集。分別在每台機器編輯配置檔案,啟動資料庫 vi mongod.conf 檔案內容 port 啟動埠 dbpath 資料存放路徑 logpath 日誌路徑 fork true 後台執行 replset 副本集名稱 三颱機器要一致 samllfiles true 啟動小日...