MongoDB复制集搭建简单讲解及验证

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB复制集搭建简单讲解及验证相关的知识,希望对你有一定的参考价值。

一.MongoDB复制集搭建介绍

二.复制集搭建
搭建环境:Centos 7
mongodb-linux-x86_64-3.2.12.tgz

1.解压安装mongodb到/usr/local/mongodb

2.在mongodb目录下创建conf目录,data目录和logs目录
技术分享图片
[[email protected] data]# mkdir 28001
[[email protected] data]# mkdir 28002
[[email protected] data]# mkdir 28003

注:复制集成员
技术分享图片
技术分享图片
28001 主数据节点,只有主节点能写
28002 从数据节点
28003 选举节点arbiter,不存取数据

3.编辑conf配置文件
[[email protected] mongodb]# cd conf
[[email protected] conf]# vim 28001.conf

port=28001
bind_ip=127.0.0.1
logpath=/usr/local/mongodb/logs/28001.log
dbpath=/usr/local/mongodb/data/28001/
logappend=true
pidfilepath=/usr/local/mongodb/data/28001/28001.pid
fork=true
oplogSize=2048
replSet=westos

技术分享图片

[[email protected] conf]# cp 28001.conf 28002.conf
[[email protected] conf]# vim 28002.conf
技术分享图片
[[email protected] conf]# cp 28001.conf 28003.conf
[[email protected] conf]# vim 28003.conf
技术分享图片

4.启动程序
[[email protected] mongodb]# mongod -f conf/28001.conf

技术分享图片

三.复制集初始化
[ro[email protected] mongodb]# mongo 127.0.0.1:28001/admin

db
admin

config={_id:"westos",members:[{_id:0,host:"127.0.0.1:28001"},{_id:1,host:"127.0.0.1:28002"},{_id:1,host:"127.0.0.1:28003"}]}

技术分享图片

给28003添加选举
技术分享图片
技术分享图片

通过rs.initiate()初始化,加上配置
技术分享图片

角标发生变化,初始化成功

查看复制集状态
westos:PRIMARY> rs.status()
技术分享图片

四.验证复制集同步
1.从其他节点登陆
第二个从节点
技术分享图片

第三个选举节点
技术分享图片

2.同步验证
在28001插入数据
技术分享图片

在28002上查看数据
技术分享图片
报错,为了保护数据一致性,没有开启同步,开启westos:SECONDARY> rs.slaveOk(true)后正常
技术分享图片

选举节点也是一样
技术分享图片

五.功能验证
1.将28001降为从节点
技术分享图片

在28002上查看,点下回车,已经变成主节点
技术分享图片

以上是关于MongoDB复制集搭建简单讲解及验证的主要内容,如果未能解决你的问题,请参考以下文章

亲测教你如何搭建 MongoDB 复制集 + 选举原理

MongoDB 复制集 第 二 部 之选举原理

MongoDB复制集安全认证

mongodb单机升级为副本集

Mongodb 可复制集搭建

MongoDB复制集/副本集(Replica Set)搭建