暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Mongo副本集布署_windows

原创 黄江平 2022-08-13
983

介绍一下非主流玩法。

1. Mongdb架构概述

官方给出的标准架构进行分析,如图:
image.png

2. 资源规划

IP 系统 软件 说明
192.168.17.148 Win 10 企业版 Mongodb4.2.18 Mongodb-primary节点
192.168.17.149 Win 10 企业版 Mongodb4.2.18 Mongodb-secondary1节点
192.168.17.150 Win 10 企业版 Mongodb4.2.18 Mongodb-secondary2节点

3.Mongo安装与配置

副本节点建议采用1主2副本情况,除非是资源缺少1主1副本1仲裁

3.1 准备工作(192.168.17.148操作)

1.防火墙允许mongo运行
进入防火墙
image.png
image.png
image.png
2.时间同步
image.png

3.2 安装Mongo

下载软件
通过官网下载https://fastdl.mongodb.org/win32/mongodb-win32-x86_64-2012plus-4.2.18.zip

解压软件并添加环境变量
路径自行修改
image.png

添加mongodb执行环境变量,添加完后重启机器使变量生效。

image.png

以下配置文件是yaml格式,在子项中是有缩进的,如图
image.png
但是在以下的文件中没有显示缩进,请注意修改
在C:\mongodb\mongodb中创建配置文件mongod.cfg,参数如下:
systemLog:
destination: file
path: C:\mongodb\mongodb\log\mongod.log
logAppend: true
logRotate: reopen

storage:
dbPath: C:\mongodb\mongodb\data
journal:
enabled: true
commitIntervalMs: 100
directoryPerDB: true

net:
bindIp: 192.168.17.148
port: 27017

replication:
oplogSizeMB: 2000
replSetName: myset

参数中,数据目录和日志目录先建好。oplogSizeMB参数可以自行调整大小

安装MongoDB服务
mongod --config “C:\mongodb\mongodb\mongod.cfg” --install --serviceName “MongoDB”
如果缺少VCRUNTIME140.dll,MSVCP140.dll,VCRUNTIME140_1.dll 可以到网上下或到自己的win10电脑上复制。

在C:\mongodb\mongodb中创建配置文件mongod.cfg,参数如下:
systemLog:
destination: file
path: C:\mongodb\mongodb\log\mongod.log
logAppend: true
logRotate: reopen

storage:
dbPath: C:\mongodb\mongodb\data
journal:
enabled: true
commitIntervalMs: 100
directoryPerDB: true

net:
bindIp: 192.168.17.148
port: 27017

replication:
oplogSizeMB: 2000
replSetName: myset

参数中,数据目录和日志目录先建好。oplogSizeMB参数可以自行调整大小

安装MongoDB服务
mongod --config “C:\mongodb\mongodb\mongod.cfg” --install --serviceName “MongoDB”
image.png

启动mongodb
net start MongoDB
image.png

3.3 启动其余2节点mongodb

192.168.17.149,192.168.17.150两个服务器执行3.1和3.2的全部步骤。

3.4 搭建副本集

副本集需要3个mongod组成,
1.采取1主(primary)2从(secondary)1。强烈推荐
2.采取1主(primary)1从(secondary)1仲裁(arbiter)的结构。

192.168.17.148操作,构建副本集
连上192.168.17.148.
mongo --port 27017 --host 192.168.17.148
use admin
config = {_id:“myset”, members:[{_id:1,host:“192.168.17.148:27017”},{_id:2,host:“192.168.17.149:27017”},{_id:3,host:“192.168.17.150:27017”}]}
rs.initiate(config);
image.png
image.png
配置执行完后,过一会,再按回车,主库就产生了。如上图

验证查看副本集状态
rs.status()
image.png

3.5 创建管理员账号

管理员账号创建:
use admin;
db.createUser(
{
user: “root”,
pwd: “rootpwd”,
roles: [
{ role: “userAdminAnyDatabase”, db: “admin” }, { role: “clusterAdmin”, db: “admin” },{ role: “root”, db: “admin” }
]
}
)

image.png

##认证方式:

use admin
db.auth(“root”,“rootpwd”); ## 如下1表示认证成功
image.png

有密码登陆:
#mongo --port 27017 --host 192.168.17.149 --username=root --password=rootpwd --authenticationDatabase=admin

image.png

最后修改时间:2022-08-13 10:38:06
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论