一.mongodb分片之win7环境下模拟多节点添加与移除分片

本文主要介绍在一台win7电脑上模拟mongo分片。如果有多台服务器,可以将每个mongo部署在单台电脑上。我们将配置3个mongo分片,3个配置服务器,1个路由服务器。如下图所示进行配置,介绍如何增加分片、移除分片。

一.下载mongodb

下载地址:http://www.mongodb.org/

二.下载windows zip版本,解压到一个目录中,并且复制7份,命名如下图:

三.分别在bin目录下建立 config.bat文件 文件内容如下列表格中所述。

注意在mongodb_xxxx目录下建data文件夹

注:路由配置中:mongos --port 2222 --configdb 127.0.0.1:2001,127.0.0.1:2002,127.0.0.1:2003

表示将路由器与配置服务器连接起来,使得他们自己可以认识对方。

四.启动:分别按照下列顺序启动mongo

1.点击配置服务器1的config.bat,启动配置

2.点击配置服务器2的config.bat,启动配置

3.点击配置服务器3的config.bat,启动配置

4.点击路由器1的config.bat,启动路由服务

5.点击分片1的config.bat,启动分片

6.点击分片2的config.bat,启动分片

7.点击分片3的config.bat,启动分片

注:启动完分片后,分片与路由之间还没有建立连接,他们是独立的,通过下面一步增加分片。

五.进入cmd命令终端,执行下列语句,client连接mongos,注意用admin连接

六.通过执行addShard命令增加分片,命令如下,增加2004,2005,2006端口的分片

七.为分片增加数据集合,测试分片

1.我们设定集合数据库名为:blog,用下列语句启用分片:

2.要进行分片必须指定集合和片键,假设我们在博客系统时间与作者上进行分片,执行语句如下:

注意,blog是数据库名,posts类似于关系型中的表名。如果要对一个已经包含数据的集合进行分片,数据片键上必须有索引。

所有文档也都必须有片键值(且不能为null)。

八.分片优化注意

1.根据分片磁盘容量设置分片最大数据量执行下面的语句,增加一个分片且只使用20GB

db.runCommand(‘addShard’:’127.0.0.1:2007’,’maxSize’:20000);

2.在添加新分片时,应该在mongo不是高度负载情况下添加,否者mongo在迁移数据时,会把应用正在使用的数据迁移到硬盘中,这样查询就会非常满。

九.移除分片

1.有时也需要移除分片,执行如下命令:

此时draining started successfunlly 表示正在进行分片移除,会将2006上数据迁移到其他分片上,这个过程非常耗时间。通过下面命令检测是否已经完成移除。

2.检测是否完成移除分片,再次执行下来语句,返回completed,表示移除完成,移除后就可以对2006进行任何操作了,关机也无所谓了。

3.如果使用了副本集,对某个副本集进行修改,应该连接副本集主服务器进行修改相应配置。

时间: 2024-11-05 13:42:07

一.mongodb分片之win7环境下模拟多节点添加与移除分片的相关文章

在Win7环境下搭建Geant4工作平台

本物理专业小硕,现在材料实验室工作,研究方向大概是核屏蔽材料的软件模拟吧.其实实验室里大多数师兄弟都是搞焊接的,平时能接触到这类直接给源码自己编译的软件的机会基本为零,所以一切都靠自己探索,成功搭建了Geant4平台在Win7环境下之后,把安装经历分享出来,供大家参考.另:本文特别感谢新浪“走走看看”大佬的博文@http://blog.sina.com.cn/morpheusndpat.接下来就是具体了: 之前在Ubuntu的平台下搭建过Geant4,但因为当时刚刚接触,所以大多都还是一知半解,

win7环境下创建超级隐藏账户

在win7环境下,系统安全得到了加强,今天来看看怎样在win7环境下新建一个超级隐藏用户. 首先,我们需要新建一个普通的账户. 在win7中我们使用net  user  添加或者删除账户都是被拒绝的. 所以,我们只有在控制面板中新加账户. 我们新建一个xiaoqin01$账户 然后我们就需要为当前用户取得管理员权限了,后面查看注册表时还要用到管理员权限.(regedit,进入注册表:regedt32,进入注册表编辑器) 我们在cmd中用net user查看不到我们刚刚新建的xiaoqin01$账

【甘道夫】Win7环境下Eclipse连接Hadoop2.2.0

准备: 确保hadoop2.2.0集群正常运行 1.eclipse中建立java工程,导入hadoop2.2.0相关jar包 2.在src根目录下拷入log4j.properties,通过log4j查看详细日志 log4j.rootLogger=debug, stdout, R log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLa

在Win7环境下安装启动Linux

在Win7系统下,安装启动Linux特别的不方便,因为XP下的boot.ini配置文件不在了,要添加一下启动选项的话, 只能使用专门的工具,这或多或少给人带来不爽的感觉,,, 其实Win7下虽然没有了boot.ini文件,但是在C盘目录下的boot.ini文件,同样还是可以添加系统的启动选项的,这让我们又可以脱离专门的配置工具,手动的设置grub4dos,然后启动安装linux,ubuntu了. 首先去网上下载grub4dos这个软件包,然后把"grldr","grldr.m

Win7环境下Web服务器的搭建和常见问题的处理

摘要:随着计算机技术的发展,学校和家庭用机很多都更新配置了Win7系统,如何在此环境下搭建Web服务器?该文根据多年的教学经验,总结了在Win7环境下动态网站Web服务器的搭建和常见问题的处理. 关键词:Web服务器;Win7系统;常见问题 Web服务器也称为WWW服务器,主要功能是提供网上信息浏览服务.Web服务器不仅能够存储信息,还能使用户在通过Web浏览器提供的信息的基础上运行脚本和程序. 静态网站是指网站的内容“固定不变”,当用户浏览器通过互联网HTTP协议向Web服务器请求提供网页内容

Windows/Linux环境下模拟服务端口方法

场景需求: 对于涉及纵向级联(比如与总部.分部级联)或横向互联(与本级其他系统互联)的大系统,往往需要在未部署系统服务时验证相关端口的开通情况,以备在防火墙上进行端口开通申请. Windows环境下模拟服务端口: 在服务器端使用第三方软件"TCP&UDP测试工具"进行模拟端口,可以很方面的用"telnet  ip  port"命令测试. Linux环境下模拟服务端口: 可以使用"nc  -v  ip  port"命令测试端口是否开通,若提

Win7环境下使用CMake编译OpenGL_Tutorials的一些注意事项

最近在通过网站Tutorials for openGL 3.3+ 来学习计算机图形学.这里的教材很人性化,更重要的是它让我们抛开旧式openGL去学习.而旧式openGL似乎也一直为人们所诟病(推荐阅读:http://blog.monkeypotion.net/reading/gameprogreading/opengl-versus-directx-the-war-is-over) 网站已经给我们写好了很多现成的代码,只需要我们用CMake去批量编译,之后就可以运行了.关于如何用CMake进行

Win7环境下VS2010配置Cocos2d-x-2.1.4最新版本号的开发环境

2014-06-01 BaoXinjian In Capgemini 一.摘要 因为用户在调用Request时需输入很多参数,经过很多Form页面,如果想打印采购订单,发票,日记账时, 客户会要求在From中新增一个按钮,客户只需按这个按钮即可将采购订单进行输出,系统会自动调取采购订单页面上的数据,无需用户输入,实行自动化,增加用户交互性 一般这种需求有两种实现方式 通过custom.pll,用代码进行定制 通过form personalization,用设定进行定制 在调用程式时,一般会用到f

win7环境下苍南社保网上申报vpn设置

同事反馈在win7环境下,苍南社保网上申报的安装程序不能安装并连接到苍南社保的内部网上上申报相关信息. 同事也把相关的资料发给了我,大致了解了下,在xp下运行方式,通过vpn拨号的服务器,然后打开服务器上的地址就可以了. 整理下win7肯定也可以,只是自动安装拨号的软件无法运行,显示配置的文件不是为此处理器架构而设置,所以决定手工配置vpn相关信息.后测试正常.现总结如下: 在win7下新建vpn连接,默认设置,直到完成 vpn服务器地址202.96.97.240 修改安全选项相关设置,vpn类