MongoDB 副本集

本文详细介绍了如何在MongoDB中设置和管理副本集,包括创建复制文件夹、启动Master、Slave和Arbiter节点,以及初始化副本集、添加副本节点和验证同步功能。通过实例展示了数据在主从节点间的同步过程,并强调了从节点的读取权限设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

副本集

参考网址:

https://blog.youkuaiyun.com/wanght89/article/details/77677271

将4.2文件夹复制三份
在这里插入图片描述
创建3个db文件夹 3个log文件夹
在这里插入图片描述

启动Master

1.启动路径:C:\Program Files\MongoDB\Server\master\bin
1.启动命令:
mongod -port 27111 -dbpath C:\data\masterdb -logpath C:\data\masterlog\mongodb.log -replSet mySet -logappend
在这里插入图片描述

启动Slave

1.切换 C:\Program Files\MongoDB\Server\slave\bin
2.执行 mongod -port 27112 -dbpath C:\data\slavedb -logpath C:\data\slavelog\mongodb.log -replSet mySet -logappend
在这里插入图片描述

启动Arbiter

C:\Program Files\MongoDB\Server\arbiter\bin
mongod -port 27113 -dbpath C:\data\arbiterdb -logpath C:\data\arbiterlog\mongodb.log -replSet mySet -logappend
在这里插入图片描述
在这里插入图片描述
1.登录master
mongo -port 27111
在这里插入图片描述
2.在初始化之前先查看一下rs状态
rs.status()
ok 0 没有找到副本集的配置信息
在这里插入图片描述
3.执行初始化 再次查看状态

rs.initiate() 在这里插入图片描述
rs.status()
在这里插入图片描述
4.为副本集添加副本
在这里插入图片描述
rs.add(“localhost:27112”)
添加成功啦 ok=1
在这里插入图片描述
再次查看rs.status()
发现副本集中有两个节点啦。而且27111是主节点,27112是从节点
在这里插入图片描述

5.添加第三个副本集
rs.add(“localhost:27113”)
在这里插入图片描述
rs.status()
在这里插入图片描述
7.登录一下27112
mongo -port 27112
发现它是Secondary
在这里插入图片描述

6.测试副本集的同步功能
6.1先在主节点27111插入一条数据
use test
db.user.insert({name:“baobei”})
在这里插入图片描述
6.2 在从节点27112进行查询
查不到数据 报错
由于副本节点默认没有读取副本集内容权限,因此会报错在这里插入图片描述
开启读取权限后再次执行查看文档命令
rs.slaveOk()
在这里插入图片描述
再次查询数据 成功啦
在这里插入图片描述
在这里插入图片描述
到此我们实现了副本集的配置和同步。

从节点里面无法进行插入操作 测试如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值