windows环境下Mongodb分片配置

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: 使用MongoDB的GridFS来存储文件,以前一直使用单个服务,分布式环境也一直没有配置成功,今天参考了几位大神的文章终于配置成功,再也不用担心文件存储的性能和安全啦。以下是自己部署的过程和示例,记录下来希望能对需要这些的人有一定的帮助。

使用MongoDB的GridFS来存储文件,以前一直使用单个服务,分布式环境也一直没有配置成功,今天参考了几位大神的文章终于配置成功,再也不用担心文件存储的性能和安全啦。以下是自己部署的过程和示例,记录下来希望能对需要这些的人有一定的帮助。

首先感谢这篇博客的指引:http://blog.csdn.net/tianyijavaoracle/article/details/41643649

 

1.下载mongodb windows客户端

2.在本地新建一个文件夹(硬盘大点的好),然后将下载的文件重命名为config1,如下:

其中db为以后存放数据库的文件夹,目前是空的,bin里面放入mongodb的所有文件,bin文件列表如下:

 

  mongoDB.bat是自己写的一个批处理文件,主要是为了方便快速启动,省去启动cmd输入代码的过程。

3.把第2步的文件复制7份,这里使用了1个路由服务,3个配置服务,3个分片服务。详细结果如下:

  

4.修改config1config2config3mongoDB.bat的端口号:

  

 

  将2001修改为自己需要的端口号,注意三个文件夹里面端口号须不一样。

5.修改data1data2data3mongoDB.bat的端口号:

  

 

  将2004修改为自己需要的端口号,注意三个文件夹里面端口号须不一样

 

6.修改mainmongoDB.bat的配置:

  

 

  将里面的三个服务地址修改为第4步配置的地址(本机使用的IP127.0.0.1,有固定IP的服务器使用服务器固定ip和端口号即可)

 

7.开始启动mongodb服务,首先依次点击config1config2config3mongoDB.bat,然后点击mainmongoDB.bat,最后依次点击data1data2data3mongoDB.bat。至此mongodb服务已经全部打开,后面要做的是进行分片附加操作,即让data1-data3能附属到main的服务中去。

8.在main文件夹下新建xxx.bat(名字任意),位置如下:

  

 

输入内容如下:

cd\
cd %~dp0bin
echo 进入%~dp0bin

mongo 127.0.0.1:2222/admin

上面ip和端口好修改为main中自己配置的端口号,这里默认的是2222,保存后双击启动bat

然后依次输入如下内容,每输入一次后回车一次(注意以下的ip地址和端口号需要换成上述4-5步中修改后的端口号)

 

1)db.runCommand({"addShard":"127.0.0.1:2004","maxSize":2000})
2)db.runCommand({"addShard":"127.0.0.1:2005","maxSize":2000})
3)db.runCommand({"addShard":"127.0.0.1:2006","maxSize":2000})

 

上述步骤中的maxSize代表了分块最大占用空间,2000代表2G

下面进行对指定数据库进行分片,这里的数据库名(mongopan)替换为实际的数据库名

 

4)db.runCommand({"enablesharding":"mongopan"})

 

56步就是指定对GridFS进行分片存储,不执行这两步会发现分片只会一直存在一个分片服务中,不会到其他的分片服务中去,这样还不如不分片呢。网上对GridFS分片的配置比较少,参考了官网(http://docs.mongoing.com/manual/tutorial/shard-gridfs-data.html)的写法

 

5)db.fs.chunks.ensureIndex({files_id:1,n:1})
6)db.runCommand({shardCollection:"mongopan.fs.chunks",key:{files_id:1,n:1},unique:true})

 

执行完以上操作后mongodb的分片环境配置就完成了,亲测有效。

 

写下这些,为自己做个备忘,自己也在这些过程中经过了很多的坑,程序猿的朋友往往比较少,希望这篇文章能对你有一些帮助

 

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
26天前
|
Linux C++ Windows
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
【Azure 应用服务】Azure App Service(Windows)环境中如何让.NET应用调用SAP NetWeaver RFC函数
|
8天前
|
SQL JavaScript 数据库
sqlite在Windows环境下安装、使用、node.js连接
sqlite在Windows环境下安装、使用、node.js连接
|
26天前
|
Java 应用服务中间件 开发工具
[App Service for Windows]通过 KUDU 查看 Tomcat 配置信息
[App Service for Windows]通过 KUDU 查看 Tomcat 配置信息
|
26天前
|
Java 应用服务中间件 Windows
【App Service for Windows】为 App Service 配置自定义 Tomcat 环境
【App Service for Windows】为 App Service 配置自定义 Tomcat 环境
|
22天前
|
网络安全 Windows
在Windows电脑上启动并配置SSH服务
在Windows电脑上启动并配置SSH服务
45 0
|
22天前
|
Ubuntu Linux 数据安全/隐私保护
在 Windows 中配置 WSL2 与 Debian 的全流程
【8月更文挑战第27天】本文详细介绍了在Windows环境中配置WSL2与Debian的全过程,包括确认Windows版本、启用相关功能、安装WSL并设置版本为WSL2、下载安装Debian、配置国内镜像源,以及设置Xserver实现GUI功能。通过这些步骤,用户能够顺利完成配置,并进行基本优化。
|
23天前
|
Windows
Windows 10找不到恢复环境
Windows 10找不到恢复环境
17 0
|
27天前
|
Java 应用服务中间件 Windows
【Azure 应用服务】App Service for Windows 环境中为Tomcat自定义4xx/5xx页面
【Azure 应用服务】App Service for Windows 环境中为Tomcat自定义4xx/5xx页面
|
27天前
|
Windows
【Azure 环境】在Windows环境中抓取网络包(netsh trace)后,如何转换为Wireshark格式以便进行分析
【Azure 环境】在Windows环境中抓取网络包(netsh trace)后,如何转换为Wireshark格式以便进行分析
|
27天前
|
运维 监控 NoSQL
【MongoDB 复制集秘籍】Secondary 同步慢怎么办?深度解析与实战指南,让你的数据库飞速同步!
【8月更文挑战第24天】本文通过一个具体案例探讨了MongoDB复制集中Secondary成员同步缓慢的问题。现象表现为数据延迟增加,影响业务运行。经分析,可能的原因包括硬件资源不足、网络状况不佳、复制日志错误等。解决策略涵盖优化硬件(如增加内存、升级CPU)、调整网络配置以减少延迟以及优化MongoDB配置(例如调整`oplogSize`、启用压缩)。通过这些方法可有效提升同步效率,保证系统的稳定性和性能。
39 4