在上一片博客中我们讲了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. iOS NSRuntime机制

    什么是Objective-C runtime? 简单来说,Objective-C runtime是一个实现Objective-C语言的C库.对象可以用C语言中的结构体表示,而方法(methods)可以 ...

  2. Codeforces Round #315 (Div. 2B) 569B Inventory 贪心

    题目:Click here 题意:给你n,然后n个数,n个数中可能重复,可能不是1到n中的数.然后你用最少的改变数,让这个序列包含1到n所有数,并输出最后的序列. 分析:贪心. #include &l ...

  3. [HDU 2553]--N皇后问题(回溯)/N皇后问题的分析

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2553 N皇后问题 Time Limit: 2000/1000 MS (Java/Others)     ...

  4. BZOJ 1925: [Sdoi2010]地精部落( dp )

    dp(i,j)表示1~i的排列中, 以1~j为开头且开头是下降的合法方案数 这种数列具有对称性, 即对于一个满足题意且开头是上升的n的排列{an}, 令bn = n-an+1, 那么{bn}就是一个满 ...

  5. Python 执行字符串表达式函数(eval exec execfile)

    eval:计算字符串中的表达式 exec:执行字符串中的语句 execfile:用来执行一个文件 在python 2中exec是语句,在python3中exec变为函数,后面要跟括号.在python3 ...

  6. 浙江大学2015年校赛F题 ZOJ 3865 Superbot BFS 搜索

    不知道为什么比赛的时候一直想着用DFS 来写 一直想剪枝结果还是TLE = = 这题数据量不大,又是问最优解,那么一般来说是用 BFS 来写 int commandi[4] = {1, 2, 3, 4 ...

  7. 浙江工商大学15年校赛I题 Inversion 【归并排序求逆序对】

    Inversion Time Limit 1s Memory Limit 131072KB Judge Program Standard Ratio(Solve/Submit) 15.00%(3/20 ...

  8. 设置QPushButton的平面与突出(遍历控件)

    #include "ui_maindialog.h" #include "maindialog.h" #include <QState> #incl ...

  9. 字符串如何判断null.

    转http://blog.sina.com.cn/s/blog_48cd37140101awgq.html Java中判断String不为空的问题 一.判断一个字符串str不为空的方法有: 1. st ...

  10. 从C到C++,C语言与C++的关系

    C语言是1972年由美国贝尔实验室的D.M.Ritchie研制成功的.它不是为初学者设计的,而是为计算机专业人员设计的.大多数系统软件和许多应用软件都是用C语言编写的.但是随着软件规模的增大,用C语言 ...