在上一片博客中我们讲了Mongodb数据库中分片集群的主要原理

在本篇博客中我们主要讲描写叙述分片集群的搭建过程。配置分片集群主要有两个步骤。第一启动全部须要的mongod和mongos进程。

第二步就是启动一个mongos与集群通信。以下我们一步步来描写叙述集群的搭建过程。

图1-1  MongoDB分片集群中的组件

图 1-2 由实例分片集群构成的进程全貌

备注:以上两者图片均引自于Kyle Banker著 丁雪丰译《MongoDB 实战》

2.1 创建分片文件夹

备注:此处于创建复制集类似。具体请查看博客:http://blog.csdn.net/sxb0841901116/article/details/40596361

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3hiMDg0MTkwMTExNg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2.2 启动副本集

我们用例如以下命令启动两个副本集:

mongod --shardsvr --replSet shard-a --dbpath "D:\Program Files\mongodb\data\slide\data\rs-a-1" --port 3000 --logpath "D:\Program Files\mongodb\data\slide\log\rs-a-1.log" --nojournal

mongod --shardsvr --replSet shard-a --dbpath "D:\Program Files\mongodb\data\slide\data\rs-a-2" --port 3001 --logpath "D:\Program Files\mongodb\data\slide\log\rs-a-2.log" --nojournal

mongod --shardsvr --replSet shard-a --dbpath "D:\Program Files\mongodb\data\slide\data\rs-a-3" --port 3002 --logpath "D:\Program Files\mongodb\data\slide\log\rs-a-3.log" --nojournal

mongod --shardsvr --replSet shard-b --dbpath "D:\Program Files\mongodb\data\slide\data\rs-b-1" --port 30100 --logpath "D:\Program Files\mongodb\data\slide\log\rs-b-1.log" --nojournal

mongod --shardsvr --replSet shard-b --dbpath "D:\Program Files\mongodb\data\slide\data\rs-b-2" --port 30101 --logpath "D:\Program Files\mongodb\data\slide\log\rs-b-2.log" --nojournal

mongod --shardsvr --replSet shard-b --dbpath "D:\Program Files\mongodb\data\slide\data\rs-b-3" --port 30102 --logpath "D:\Program Files\mongodb\data\slide\log\rs-b-3.log" --nojournal

当成功执行后。会出现类似于以下的6个黑窗体:

2.3 启动副本集

启动第一副本集shard-a:

大家可用用rs.status()命令来查看第一副本集的状态。

启动第第二副本集shard-b:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3hiMDg0MTkwMTExNg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

2.4 创建配置server文件夹

2.5 用例如以下命令启动配置server

mongod --configsvr --dbpath "D:\Program Files\mongodb\data\slide\data\config-1" --port 27019 --logpath "D:\Program Files\mongodb\data\slide\log\config-1.log" --nojournal
mongod --configsvr --dbpath "D:\Program Files\mongodb\data\slide\data\config-2" --port 27020 --logpath "D:\Program Files\mongodb\data\slide\log\config-2.log" --nojournal
mongod --configsvr --dbpath "D:\Program Files\mongodb\data\slide\data\config-3" --port 27021 --logpath "D:\Program Files\mongodb\data\slide\log\config-3.log" --nojournal

用shell连接或者查看log文,确保每台配置server都已启动并正常执行,并验证每一个进程都在监听配置的port。查看每台配置server的日志,应该能看到这种内容。

查看任务管理窗体,正在执行的进程:

2.6 启动Mongos

启动mongos必须使用configdb选项来启动。它接受一个用逗号切割的配置server地址列表:

Mongos --configdb WIN--20141018KO:27019,WIN--20141018KO:27020,WIN--20141018KO:27021 --logpath "D:\Program Files\mongodb\data\slide\log\mongos.log" --port 40000

二、 配置集群

登陆mongos上,查看可用的命令:

把分片shard-a, shard-b加入到分片集群中:

两种方式查看分片集群:

【MongoDB】在windows平台下搭建mongodb的分片集群(二)的更多相关文章

  1. Windows平台下搭建Git服务器的图文教程

    Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...

  2. Windows平台下搭建Git服务器的图文教程(转发)

    Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...

  3. 【深入 MongoDB 开发】使用正确的姿势连接分片集群

    MongoDB分片集群(Sharded Cluster)通过将数据分散存储到多个分片(Shard)上,来实现高可扩展性.实现分片集群时,MongoDB 引入 Config Server 来存储集群的元 ...

  4. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

  5. windows下搭建Consul分布式系统和集群

    随着大数据时代的到来,分布式是解决大数据问题的一个主要手段,随着越来越多的分布式的服务,如何在分布式的系统中对这些服务做协调变成了一个很棘手的问题.我们在一个项目上注册了很多服务,在进行运维时,需要时 ...

  6. centos7 下搭建hadoop2.9 分布式集群

    首先说明,本文记录的是博主搭建的3节点的完全分布式hadoop集群的过程,环境是centos 7,1个nameNode,2个dataNode,如下: 1.首先,创建好3个Centos7的虚拟机,具体的 ...

  7. 在CentOS7下搭建Hadoop2.9.0集群

    系统环境:CentOS 7 JDK版本:jdk-8u191-linux-x64 MYSQL版本:5.7.26 Hadoop版本:2.9.0 Hive版本:2.3.4 Host Name Ip User ...

  8. mongoDB 在windows平台下安装成系统服务

    1,用如截图所示命令将mongoDB安装成windows系统服务,byRuiy Tips[Note,logpath and dbpath根据你命令行指导的路径,这些目录一定要已经创建]

  9. Windows平台下搭建自己的Git服务器

    该文章转自:http://www.codeceo.com/article/windows-git-server.html Gitblit 是一个纯 Java 库用来管理.查看和处理 Git 资料库,相 ...

随机推荐

  1. C#学习之在辅助线程中修改UI控件----invoke方法

    Invoke and BeginInvoke 转载地址:http://www.cnblogs.com/worldreason/archive/2008/06/09/1216127.html 在Invo ...

  2. javascript学习(10)——[知识储备]链式调用

    上次我们简单的说了下单例的用法,这个也是在我们java中比较常见的设计模式. 今天简单说下链式调用,可能有很多人并没有听过链式调用,但是其实只要我简单的说下的话,你肯定基本上都在用,大家熟知的jQue ...

  3. new Intent(String action,Uri uri)构造器说明

    这是myDiary这个工程下MainActivity中的protected void onListItemClick(ListView l, View v, int position, long id ...

  4. ASP.NET MVC 5 学习教程:添加模型

    原文 ASP.NET MVC 5 学习教程:添加模型 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控 ...

  5. 一步一步重写 CodeIgniter 框架 (7) —— Controller执行时将 Model获得的数据传入View中,实现MVC

    1. 实现过程 1) 上一节讲述了 View 视图的加载过程,它是在 Loader 类中加载的,并通过 Include 语句进行包含.那么为了在 View 中传递变量,只需要在 include 语句所 ...

  6. Java CopyOnWriteArrayList分析

    CopyOnWriteArrayList是一种线程安全的ArrayList,顾名思义,它会利用写时拷贝技术,它对共享对象做仅仅读操作的时候,大家都用一个共享对象,假设有可变的操作时,就会复制一份出来, ...

  7. 数论F - Strange Way to Express Integers(不互素的的中国剩余定理)

    F - Strange Way to Express Integers Time Limit:1000MS     Memory Limit:131072KB     64bit IO Format: ...

  8. Lua学习笔记6:C++和Lua的相互调用

        曾经一直用C++写代码.话说近期刚换工作.项目组中的是cocos2dx-lua,各种被虐的非常慘啊有木有.     新建cocos2dx-lua项目.打开class能够发现,事实上就是C++项 ...

  9. 在ibatis下匹配特殊手机号码(oracle数据库)

    <isNotNull prepend="AND" property="endNumber"> <isNotEmpty property=&qu ...

  10. c++,extern “c”

    C++中extern "C"的设立动机是实现C++与C及其它语言的混合编程. C++支持函数重载,而过程式语言C则不支持.函数被C++编译后在符号库中的名字与C语言的不同. 例如, ...