mongodb windows 集群搭建
准备三台机器,系统:windows 8
192.168.1.1
192.168.1.2
192.168.1.3
每台机器上安装mongodb 服务,步骤:
- 下载以下文件并依次执行安装
clearcompressionflag.exe
Windows8.-KB2919442-x64.msu
Windows8.-KB2932046-x64.msu
Windows8.-KB2934018-x64.msu
Windows8.-KB2937592-x64.msu
Windows8.-KB2938439-x64.msu
Windows8.-KB2959977-x64.msu
Windows8.1-KB2919355-x64.msu
Windows8.-KB2999226-x64.msu- 下载 vc_redist.x64.exe 并安装
- 下载文件 mongodb-win32-x86_64-2008plus-ssl-4.0.6-singed.mis 并安装。如果报错 无法启动服务,那么到mongodb 安装目录,这里是 C:\Program Files\MongoDB\Server\4.0\bin 内修改配置文件mongod.cfg,注释掉 mp 配置项(最后一行)。
- 修改配置文件 mongod.cfg,增加如下配置, XXX 是副本集名称。
replication:
replSetName: XXX- 重启mongodb 服务,使配置生效
- 命令行打开 mongo
mongo --host 192.168.1.1
- 执行以下语句, arbiterOnly:true 表示节点仅用作仲裁节点,如果此节点需要存储数据,则不设置 arbiterOnly,默认为 false。
> config={ _id:'XXX', members:[ {_id:,host:'192.168.1.1:27017'}, {_id:,host:'192.168.1.2:27017'}, {_id:,host:'192.168.1.3:27017',arbiterOnly:true}]}...
> rs.initiate(config)- 查看 设置状态
> rs.status()
集群搭建参考 https://www.cnblogs.com/ityouknow/p/7344005.html
集群认证:https://blog.csdn.net/uncle_david/article/details/78713551
下面是我的配置文件
# conf/config.conf
## 配置文件内容 mongodb 4.0
pidfilepath = D:/mongodb-cluster/config/log/configsrv.pid
dbpath = D:/mongodb-cluster/config/data
logpath = D:/mongodb-cluster/config/log/congigsrv.log
logappend = true bind_ip = 0.0.0.0
port =
# fork = true #declare this is a config db of a cluster;
configsvr = true #副本集名称
replSet=configs #设置最大连接数
maxConns= keyFile = D:/mongodb-cluster/conf/key.file
auth = true
分片配置文件和路由配置文件就不再列出来了,通过上面两个链接的博客内容,很容易得到。
另外在列出搭建集群时常用的命令以及 js 代码,方便复制粘贴,
mongod -f D:\mongodb-cluster\conf\config.conf
mongod -f D:\mongodb-cluster\conf\shard1.conf
mongod -f D:\mongodb-cluster\conf\shard2.conf
mongod -f D:\mongodb-cluster\conf\shard3.conf
mongos -f D:\mongodb-cluster\conf\mongos.conf config = {_id:"configs", members: [{_id:, host:"192.168.2.171:21000"}, {_id:, host: "192.168.2.172:21000"}, {_id:,host:"192.168.2.173:21000"}]}
config = {_id : "shard1", members : [{_id : , host : "192.168.2.171:27001" },{_id : , host : "192.168.2.172:27001" },{_id : , host : "192.168.2.173:27001" , arbiterOnly: true }]}
config = {_id : "shard2", members : [{_id : , host : "192.168.2.171:27002", arbiterOnly: true },{_id : , host : "192.168.2.172:27002" },{_id : , host : "192.168.2.173:27002" }]}
config = {_id : "shard3", members : [{_id : , host : "192.168.2.171:27003" },{_id : , host : "192.168.2.172:27003" , arbiterOnly: true },{_id : , host : "192.168.2.173:27003" }]} sh.addShard("shard1/192.168.2.171:27001,192.168.2.172:27001,192.168.2.173:27001")
sh.addShard("shard2/192.168.2.171:27002,192.168.2.172:27002,192.168.2.173:27002")
sh.addShard("shard3/192.168.2.171:27003,192.168.2.172:27003,192.168.2.173:27003") // auth:
db.createUser(
{
user:"xxx",
pwd:"xxx",
roles:[{role:"root",db:"admin"}]
}
)
添加副本集 rs.initiate(config); 时要注意,分片内某节点如果设置为 arbiterOnly:true ,那么不能在这个节点上连接 mongodb 实例,否则会报错,以上面配置为例,分片 2 这个副本集创建时,是在 192.168.2.172 上执行的,如下
# 在 192.168.2.172 节点上执行以下命令
mongo --port
config = {_id : "shard2", members : [{_id : , host : "192.168.2.171:27002", arbiterOnly: true },{_id : , host : "192.168.2.172:27002" },{_id : , host : "192.168.2.173:27002" }]}
rs.initiate(config);
其他命令我都是在 192.168.2.171 上的 mongo shell 里执行。
也有地方建议不使用仲裁节点,同时配置副本集中节点数量为奇数,
config = {_id : "shard1", members : [{_id : , host : "192.168.2.171:27001" },{_id : , host : "192.168.2.172:27001" },{_id : , host : "192.168.2.173:27001" }]}
mongodb windows 集群搭建的更多相关文章
- Mongodb Windows 集群
我在一台Windows机器下搭建了一个 Replica Sets + Sharding 测试集群环境,以此作为我后续对于Mongodb更进一步学习的实验平台. 只有一台windows机器,配置方案:1 ...
- MongoDB分布式集群搭建
最近在做一个关于车险的项目,由于数据量较大,实验室的Boss决定采用HBase+ES/MongoDB这两种方案,并做性能对比,本人负责MongoDB方案.为了满足海量数据的存储要求,需要搭建一个分布式 ...
- mongodb分布式集群搭建手记
一.架构简介 目标单机搭建mongodb分布式集群(副本集 + 分片集群),演示mongodb分布式集群的安装部署.简单操作. 说明在同一个vm启动由两个分片组成的分布式集群,每个分片都是一个PSS( ...
- MongoDB分片集群搭建及扩容
### 实验:分片集群搭建及扩容#### 实验目标及流程 * 目标:学习如何搭建一个两分片的分片集群 * 环境:3台Linux虚拟机器,4Core 8GB * 步骤: * 配置域名解析 * 准备分片目 ...
- MongoDB 分片集群搭建
一.概述 分片是一种在多台机器上分配数据的方法.MongoDB使用分片来支持具有非常大的数据集和高吞吐量操作.有两种解决系统增长的方法:垂直扩展和水平扩展. 垂直扩展涉及增加单个服务器的容量,例如使用 ...
- MongoDB ReplicaSet 集群搭建
说明 本文创建的集群的名字为test,在同一台机器上创建了三个mongo实例,端口不同即可. 安装mongodb的教程,之前总结过,请参考:CentOS安装MongoDB笔记 创建实例 # 本机默认原 ...
- MongoDB分布式集群搭建(分片加副本集)
# 环境准备 服务器 # 环境搭建 文件配置和目录添加 新建目录的操作要在三台机器中进行,为配置服务器新建数据目录和日志目录 mkdir -p $MONGODB_HOME/config/data mk ...
- mongodb sharding集群搭建
创建虚拟机,如果是使用copy的方式安装系统,记得修改机器名,否则所有的机器名称都一样,会造成安装失败 同时关闭掉防火墙,将所有的机器的时间调成一致,master和slave的heartbeat间隔不 ...
- mongodb副本集群搭建
一.环境介绍 1.机器信息 10.40.6.68 10.40.6.108 10.40.6.110 软件环境为centos 6.x 2.mongodb 下载链接地址 https://www.mongod ...
随机推荐
- stand up meeting 12/24/2015 && end sprint1
part 组员 工作 工作耗时/h 明日计划 工作耗时/h UI 冯晓云 解决单词本显示页面的问题 4 完善显示页面的功能 4 ...
- Java - window下环境配置
JDK下载 官网:https://www.oracle.com/java/technologies/javase-jdk8-downloads.html 百度网盘: 链接:https://pan.ba ...
- SpringBoot集成MyBatis底层原理及简易实现
MyBatis是可以说是目前最主流的Spring持久层框架了,本文主要探讨SpringBoot集成MyBatis的底层原理.完整代码可移步Github. 如何使用MyBatis 一般情况下,我们在Sp ...
- 反向icmp_shell
前言 很老的一个技术了,学习下. ICMP协议工作方式简介 Internet控制报文协议(ICMP)是Internet协议族中一个.它被用于包括路由器在内的网络设备中,用来发送错误报文和操作信息,表示 ...
- BUUOJ Misc刷题大作战
你竟然赶我走 随便一个txt文件都可以拿 LSB 当然还有别的,根据里面左右左右变化,在0管道有变化,然后把下面的三个0打钩,导出png,一个二维码,扫出来 乌镇峰会种图 只要会用winhex打开文件 ...
- [YII2] 增删改查2
一.新增 使用model::save()操作进行新增数据 $user= new User; $user->username =$username; $user->password =$pa ...
- MySQL 主从复制:基于二进制文件复制配置详解
MySQL-主从复制:基于二进制文件复制详解 前言 主从复制是指把一个MySQL的数据库服务器作为主服务器(master),然后把master的数据复制到一个或者多个MySQL数据库服务器作为从服务器 ...
- hdu_2570 迷障 贪心
迷瘴 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- Comparable 接口与Comparator的使用的对比
package com.yhqtv.java; import org.junit.Test; import java.util.Arrays; import java.util.Comparator; ...
- 老男孩教育每日一题-2017年3月29日-使用ifconfig取出网卡eth0的ip地址-看看你有多少方法...
方法1:sed命令 [root@oldboyedu ~]# ifconfig eth0 |sed -n '2p' |sed's#^.*addr:##g'|sed 's# B.*$##g' 10.0. ...