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/22/2015 && 用户体验收录
part 组员 工作 工作耗时/h 明日计划 工作耗时/h UI 冯晓云 完善页面切换,尝试子页面设计 4 完善页面切换和子页面 ...
- java多线程3:原子性,可见性,有序性
概念 在了解线程安全问题之前,必须先知道为什么需要并发,并发给我们带来什么问题. 为什么需要并发,多线程? 时代的召唤,为了更充分的利用多核CPU的计算能力,多个线程程序可通过提高处理器的资源利用率来 ...
- bypass安全狗测试学习
搭建简单的sql注入环境 在test数据库中创建sqltest表,插入字段数据 编写存在注入的php文件 <?php $id = $_REQUEST['uid']; echo "您当前 ...
- 新增记录txt文档
StringBuilder s = new StringBuilder(); s.Append("[" + dt.Rows[i]["Store"].Conver ...
- 磁盘性能测试工具之fio
fio是测试磁盘性能的一个非常好的工具,用来对硬件进行压力测试和验证. 注意事项 CentOS 6.5等较老版本的操作系统用fdisk创建分区时,默认为非4KB对齐选择初始磁柱编号,对性能有较大的影响 ...
- Flair:一款简单但技术先进的NLP库
过去的几年里,在NLP(自然语言处理)领域,我们已经见证了多项令人难以置信的突破,如ULMFiT.ELMo.Facebook的PyText以及谷歌的BERT等等. 这些技术大大推进了NLP的前沿性研究 ...
- Java 多线程 -- 理解锁:手动实现可重入锁和不可重入锁
JDK提供的大多数内置锁都是可重入的,也就是 说,如果某个线程试图获取一个已经由它自己持有的锁时,那么这个请求会立 刻成功,并且会将这个锁的计数值加1,而当线程退出同步代码块时,计数器 将会递减,当计 ...
- 我个人常用的git命令
在还没有习惯用命令行之前,我建议用一下sourcetree这个软件熟悉一下流程. 使用 git clone 拷贝一个 Git 仓库到本地:git clone url 添加所有的文件到缓存区: git ...
- 获取 ProgramData 文件夹路径
]; if (SHGetFolderPathA( NULL, CSIDL_COMMON_STARTUP, NULL, , startUpDir) != S_OK) { printf("SHG ...
- HMAC算法及其应用
HMAC算法及其应用 MAC HMAC HMAC的应用 HMAC实现举例 MAC 在现代的网络中,身份认证是一个经常会用到的功能,在身份认证过程中,有很多种方式可以保证用户信息的安全,而MAC(mes ...