MongoDB副本集群介绍:
MongoDB的副本集是一组维护相同数据集的MongoDB服务器,提供高可用性和数据冗余。副本集有一个主节点(primary)和多个从节点(secondary),当主节点出现故障时,从节点可以通过选举一个新的主节点来保持服务的高可用性。
1.环境准备
(确保您已安装MongoDB并且可运行成功)
节点 | 配置 |
主节点 | localhost:27017 |
从节点1 | localhost:27018 |
从节点2 | localhost:27019 |
(1).创建文件夹
MongoDB1
(2).启动实例服务
语法:bin>mongod -port 端口号 -dbpath 数据路径 -logpath 日志路径 -replSet 副本集名称
主节点:
>mongod -port 27017 -dbpath D:\MongoDB1\data -logpath D:\wmy\MongoDB1\log\mongo1.log -replSet rs0
从节点1:
>mongod -port 27018 -dbpath D:\MongoDB1\data -logpath D:\wmy\MongoDB1\log\mongo1.log -replSet rs0
从节点2:
>mongod -port 27019 -dbpath D:\MongoDB1\data -logpath D:\wmy\MongoDB1\log\mongo1.log -replSet rs0
小贴士
1.以上三个节点启动的都是一次性服务,所以窗口不要关闭!
2.节点启动可能会遇到问题,主要检查端口是否被占用,和路径配置问题。或以管理员身份启动cmd解决。
2.配置副本集
(1).输入代码
D:\MongoDB\bin>mongo -port 27017
MongoDB shell version v4.4.24
connecting to:mongodb://127.0.0.1:27017/compressors=disabled&gssapiServiceName=mongodbImplicit session: session ("id":UUD("2959ffD80-f7bf-47c4-b3de-312a7a4d7824")}MongoDB server version: 4.4.24
(2).进行配置
ues admin
(3).配置集群
config={_id:"rs0",members:[
... {_id:0,host:"localhost:27017","priority":3},
... {_id:1,host:"localhost:27018","priority":2},
... {_id:2,host:"localhost:27019","priority":1}]}
(4).使配置失效(结果如图所示)
rs.initiate(config)
(5).更正查看副本集状态
rs.status()
3.节点设置
(1).进行从节点永久化设置
rs.slaveOk()
4.副本集验证
(1).节点中增加数据
rs0:PRIMARY> db. c4 insert({name:"副本测试,num:1"})
WruteResult({"nInserted" :1 })
(2).节点上验证
rs0:PRIMARY> db. c4. find()
{ "_id" :ObjectId("6614eda5ca03d5ee816c5"),"name":"副本测试,"num": 1}
rs0:SECONDARY>
显示则认证成功
Shards Server: 每个shard由一个或多个mongod进程组成,用于存储数据
Config Server: 用于存储集群的Metadata信息,包括每个Shard的信息和chunks信息
Route Server: 用于提供路由服务,由Client连接,使整个Cluster看起来像单个DB服务器