MongoDB副本集部署(windows)

环境准备

本教程演示mongodb4.4 副本集部署(一主两从,伪分布式)

节点 配置
主节点 localhost:27017
从节点1 localhost:27018
从节点2 localhost:27019

每一个节点(实例)都创建对应的数据文件(data)和日志文件(log)。例如:

启动实例(服务)

语法:

复制代码
bin>mongod -port 端口号  -dbpath 数据路径 -logpath 日志路径 -replSet 副本集名称

示例:

复制代码
>mongod -port 27018 -dbpath D:\MongoDB1\data -logpath D:\MongoDB1\log\mongo1.log -replSet rs0

主节点:

从节点1(以管理员身份启动):

从节点2:

以上三个节点启动的都是一次性服务,所以窗口不要关闭!

tips:

节点启动可能会遇到问题,主要检查端口是否被占用,和路径配置问题。若都没问题则考虑以管理员身份启动cmd。

配置副本集

维持服务不要关闭,进入任何一个节点内:

进行配置:

1.切换到admin数据库

复制代码
use admin

2.配置集群

复制代码
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}]}

说明:第一个"_id"为副本集名称,"priority"为优先级,数字越大,优先级越高。

3.使得配置生效

复制代码
rs.initiate(config)

生效后可能会出现节点显示错误:

(明明是主节点,但却显示从节点)

只需要查看副本集状态即可更正:

复制代码
 rs.status()


从节点配置

刚刚配置好的副本集中的从节点是无法进行数据库操作的:

要先进行从节点永久化设置:

复制代码
rs.slaveOk()

或者使用(推荐使用):

复制代码
rs.secondaryOk() 

副本集验证

在主节点中增加数据

在从节点上验证:

说明副本集群部署成功。

相关推荐
Elastic 中国社区官方博客1 小时前
让大模型思考,让小模型执行:在 Elastic Workflows 中拆分 LLM 成本
大数据·运维·数据库·人工智能·elasticsearch·ai
Faith_xzc1 小时前
一条 SQL 顶一条 Flink 链路?Doris Streaming Job 持续导入全景解析
大数据·数据库·sql·flink
爱学习的小白柏1 小时前
【AI问数技术】多Agent协同架构:查询规划/SQL生成/洞察分析/报告生成
java·网络·人工智能·windows·sql·架构·llama
这个DBA有点耶4 小时前
多模数据库深度解读:从“多库拼装”到“一库多能”的架构演进
数据库·mysql·dba
程序员夏洛4 小时前
MySQL 默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
艺术留白4 小时前
MokaTest使用篇-SQL接口
数据库·sql
何以解忧,唯有..5 小时前
Python 中获取目录操作完全指南
windows·python·microsoft
( •̀∀•́ )9205 小时前
MySQL 自动备份与恢复方案
数据库·mysql·oracle
这个DBA有点耶5 小时前
大事务的“事前预防”:监控、拦截、Kill,四层防线一次讲透
数据库·mysql·代码规范
tachibana26 小时前
RAGAS 指标解读
数据库·人工智能·算法·机器学习·架构·大模型·llm