从零搭建mongo分片集群的简洁方法
来源:互联网 发布:怎样在微信上做淘宝客 编辑:程序博客网 时间:2024/04/30 12:59
一、目录
1、mongo路径,config数据路径,shard数据路径
2、shard数据路径的结构(共6个分片,分别位于D盘和E盘)
1)D盘中
2)E盘中
3、启动各个服务端的批处理
1)启动configs服务器
mongod --dbpath=d:\shard_configs --port 23017
2)启动mongos服务器
mongos --port 25017 --configdb 10.0.0.186:23017
3)启动各个shard分片服务器
mongod --dbpath=d:\shard_data\shard_data_000 --port 27017
mongod --dbpath=d:\shard_data\shard_data_001 --port 27018
mongod --dbpath=d:\shard_data\shard_data_002 --port 27019
mongod --dbpath=e:\shard_data\shard_data_003 --port 27020
mongod --dbpath=e:\shard_data\shard_data_004 --port 27021
mongod --dbpath=e:\shard_data\shard_data_005 --port 27022
二、将各个分片添加到集群中
1、防火墙上开放23017和25017端口
2、将各个分片添加到集群中
C:\Users\Administrator>mongo 10.0.0.186:25017MongoDB shell version: 2.4.5connecting to: 10.0.0.186:25017/testmongos> use adminswitched to db adminmongos> db.runCommand({addshard:"10.0.0.186:27017",allowLocal:true}){ "shardAdded" : "shard0000", "ok" : 1 }mongos> db.runCommand({addshard:"10.0.0.186:27018",allowLocal:true}){ "shardAdded" : "shard0001", "ok" : 1 }mongos> db.runCommand({addshard:"10.0.0.186:27019",allowLocal:true}){ "shardAdded" : "shard0002", "ok" : 1 }mongos> db.runCommand({addshard:"10.0.0.186:27020",allowLocal:true}){ "shardAdded" : "shard0003", "ok" : 1 }mongos> db.runCommand({addshard:"10.0.0.186:27021",allowLocal:true}){ "shardAdded" : "shard0004", "ok" : 1 }mongos> db.runCommand({addshard:"10.0.0.186:27022",allowLocal:true}){ "shardAdded" : "shard0005", "ok" : 1 }mongos>
3、查看最终的分片结果
mongos> use configswitched to db configmongos> db.shards.find(){ "_id" : "shard0000", "host" : "10.0.0.186:27017" }{ "_id" : "shard0001", "host" : "10.0.0.186:27018" }{ "_id" : "shard0002", "host" : "10.0.0.186:27019" }{ "_id" : "shard0003", "host" : "10.0.0.186:27020" }{ "_id" : "shard0004", "host" : "10.0.0.186:27021" }{ "_id" : "shard0005", "host" : "10.0.0.186:27022" }mongos>
三、创建数据库和集合,并制定分片键
1、创建数据库,集合,索引
2、指定news,forum集合的分片键
1)数据库web_content启动分片功能
mongos> use adminswitched to db adminmongos> db.runCommand({"enablesharding":"web_content"}){ "ok" : 1 }mongos>
2)指定两个集合的分片键
mongos> use adminswitched to db adminmongos> db.runCommand({"shardcollection":"web_content.news","key":{"url_md5":1}}){ "collectionsharded" : "web_content.news", "ok" : 1 }mongos> db.runCommand({"shardcollection":"web_content.forum","key":{"url_md5":1}}){ "collectionsharded" : "web_content.forum", "ok" : 1 }mongos>
3)查看初始时的分片情况
news集合:
forum集合:
0 0
- 从零搭建mongo分片集群的简洁方法
- Mongo分片集群搭建
- mongo集群分片
- 【Mongo】架构从复制集到分片集群
- 从零搭建Hadoop集群
- mongodb分片集群的搭建
- 构建一个Mongo分片集群
- Mongo实战-分片集群的查询与索引
- CentOS7 从零搭建 Cassandra3.7集群
- 从零搭建Hadoop集群 二
- 从零搭建Hadoop集群 三
- 从零搭建Hadoop集群 四
- 从零搭建Hadoop集群 五
- MongoDB 分片集群搭建
- mongodb集群搭建-分片
- MongoDB分片集群搭建
- mongodb 集群分片搭建
- Mongo 整体架构介绍(1)-------分片集群
- Android按钮计时工具类
- Maven学习笔记(七)--灵活的构建
- quick-cocos2d-x的热更新机制实现
- <数据结构学习与实验指导>2-12两个有序链表序列的交集/2-13两个有序序列的中位数
- Binary Tree Level Order Traversal II
- 从零搭建mongo分片集群的简洁方法
- 《两个精神病人》——Java课堂练习
- (各个公司面试原题)在线做了一套CC++综合测试题,也来测一下你的水平吧(二)
- Lucene介绍
- 类加载器
- 考前一个月SAT数学词汇备考重点
- 学习笔记 - 批处理2
- AsyncYask的用法
- c++ 数字字符串按数字的大小进行排序 并统计字符串个数