Shard部署

准备测试环境

为准备数据文件夹

Cd  /home/tiansign/fanr/mongodb/Shard

mkdir configdb1 configdb2 configdb3

mkdir shard1 shard2 shard3

mkdir mongos

准备配置文件

为Config准备配置文件

dbpath=/home/tiansign/fanr/mongodb/Shard/configdb1

fork = true

logpath=/home/tiansign/fanr/mongodb/Shard/configdb1/config.log

为Shard准备配置文件

dbpath=/home/tiansign/fanr/mongodb/Shard/shard1

fork = true

logpath=/home/tiansign/fanr/mongodb/Shard/shard1/shard.log

port=27018

dbpath=/home/tiansign/fanr/mongodb/Shard/shard2

fork = true

logpath=/home/tiansign/fanr/mongodb/Shard/shard2/shard.log

port=27021

dbpath=/home/tiansign/fanr/mongodb/Shard/shard3

fork = true

logpath=/home/tiansign/fanr/mongodb/Shard/shard3/shard.log

port=27020

启动Config服务

mongod --config /home/tiansign/fanr/mongodb/Shard/configdb1/config.cfg --configsvr

启动Mongos服务

#mongos -f /home/tiansign/fanr/mongodb/Shard/mongos/mongos.cfg

mongos –configdb 127.0.0.1:27019

启动Shard的Mongod

mongod --config /home/tiansign/fanr/mongodb/Shard/shard1/shard.cfg

mongod --config /home/tiansign/fanr/mongodb/Shard/shard2/shard.cfg

mongod --config /home/tiansign/fanr/mongodb/Shard/shard3/shard.cfg

加入Shard服务

Mongo

sh.addShard("127.0.0.1:27018")

sh.addShard("127.0.0.1:27021")

sh.addShard("127.0.0.1:27020")

db.settings.save( { _id:"chunksize", value: 1} )

配置Shard Database

sh.enableSharding("test")

配置Shard Collection

sh.shardCollection("test.joker", {jokes:1});

插入测试数据

for (var i=0; i<100000; i++) { db.joker.insert({jokes: Math.random(), count: i, time: new Date()}); }

查看Chunk分布情况

use config

db.chunks.find({ns: "test.joker"}, {shard:1, _id:0}).sort({shard:1})

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0001" }

{ "shard" : "shard0001" }

{ "shard" : "shard0001" }

{ "shard" : "shard0002" }

{ "shard" : "shard0002" }

{ "shard" : "shard0002" }

Shard Tag的使用

先把Tag和Shard关联

sh.addShardTag("shard0000", "mr. j")

为Tag分配shard key

sh.addTagRange("test.joker", {jokes:MinKey}, {jokes:MaxKey}, "mr. j")

查看均衡器状态

db.locks.find( { _id : "balancer" } ).pretty()

查看Chunk分布情况

use config

db.chunks.find({ns: "test.joker"}, {shard:1, _id:0}).sort({shard:1})

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

{ "shard" : "shard0000" }

MongoDB Shard部署及Tag的使用的更多相关文章

  1. mongodb 简单部署方案及实例

    mongodb 简单部署方案及实例 转载:http://my.oschina.net/zhuzhu0129/blog/53290 第一节 准备工作 一 安装mongodb  我这里选用rehl 5.6 ...

  2. mongodb分片部署

    Mongodb 分片部署 配置mongodb集群,比如 在3个server上配置 3 shard的Mongodb集群: 架构: 1.每片数据需要3个mongod server,2个为主从数据节点:1个 ...

  3. MongoDB 分布式部署教程

    本文将介绍如何使用 MongoDB 提供的 Replica Set 和 Shards 功能构建一个分布式 MongoDB 集群. Replica Set 部署 我们先从部署一个三节点的 Replica ...

  4. mongodb环境部署

    mongodb 环境部署 1.环境说明 安装软件:mongodb-linux-x86_64-.tgz 软件安装位置:/usr/local/mongodb 数据存放位置:/var/mongodb/dat ...

  5. 服务器小白的我,是如何将 node+mongodb 项目部署在服务器上并进行性能优化的

    前言 本文讲解的是:做为前端开发人员,对服务器的了解还是小白的我,是如何一步步将 node+mongodb 项目部署在阿里云 centos 7.3 的服务器上,并进行性能优化,达到页面 1 秒内看到 ...

  6. MongoDB单机部署

    MongoDB单机部署 一.环境 系统:centos7.6 DB版本:mongodb-linux-x86_64-rhel62-4.2.1.tgz 官网地址:https://www.mongodb.co ...

  7. MongoDB安装部署(一)

    前言 MongoDB是一个由C++语言编写的基于分布式文件存储的数据库,是当前NoSQL数据库中比较热门的一种,旨在为Web应用提供可扩展的高性能数据存储解决方案. MongoDB 简介 MongoD ...

  8. Tokumx 代替 Mongodb 群集部署

    一, 配置环境: 系统: CentOS 7 x64 tokumx1 ip: 192.168.0.155 tokumx2 ip: 192.168.0.156 tokumx3 ip: 192.168.0. ...

  9. 腾讯云Unubtu 16.04 (gunicorn+supervisor+ngnix+mongodb)部署Flask应用

    1.申请腾讯云服务 我申请了免费使用的云服务器 ,选择安装的Linux版本是ubuntu16.04.1 LTSx86_64.我个人PC安装使用的也是这个版本,比较熟悉些. 详细参考帮助文档. 2.登录 ...

随机推荐

  1. 微信、QQ、微博、陌陌……社交网络的底层逻辑是什么?

      两 年前的社交产品泛滥犹在眼前,场景之胜几乎到了言必谈社交的地步.时任阿里新CEO陆兆禧举全集团之力,力推新社交产品“来往”,动作之大震惊整个互联 网.如今,陆兆禧早早退场,只留下一个硬汉的孤独背 ...

  2. 【C#】VS2015开发环境的安装和配置(二)2016-08-03更新

    分类:C#.VS2015.WPF.ASP.NET MVC.Android.iOS.Unity3D: 更新日期:2016-08-03 按下面介绍的步骤安装即可. 一.安装JDK和Android SDK ...

  3. .net IO异步和Producer/Consumer队列实现一分钟n次http请求

    简介 最近工作中有一个需求:要求发送http请求到某站点获取相应的数据,但对方网站限制了请求的次数:一分钟最多200次请求. 搜索之后,在stackoverflow网站查到一个类似的问题..但里面用到 ...

  4. JS中跨域和沙箱的解析

    先来直接分析源码,如下: <!DOCTYPE HTML><html><head> <meta charset="UTF-8"/> & ...

  5. 泛函编程(25)-泛函数据类型-Monad-Applicative

    上两期我们讨论了Monad.我们说Monad是个最有概括性(抽象性)的泛函数据类型,它可以覆盖绝大多数数据类型.任何数据类型只要能实现flatMap+unit这组Monad最基本组件函数就可以变成Mo ...

  6. Guava学习笔记:EventBus

    EventBus是Guava的事件处理机制,是设计模式中的观察者模式(生产/消费者编程模型)的优雅实现.对于事件监听和发布订阅模式,EventBus是一个非常优雅和简单解决方案,我们不用创建复杂的类和 ...

  7. EntityFramework动态多条件查询与Lambda表达式树

              在常规的信息系统中, 我们有需要动态多条件查询的情况, 例如UI上有多个选择项可供用户选择多条件查询数据. 那么在.net平台Entity Framework下, 我们用Lambd ...

  8. GJM:C# WinForm开发系列 - DataGridView 使用方法集锦 [转载]

    1.DataGridView实现课程表 testcontrol.rar 2.DataGridView二维表头及单元格合并 DataGridView单元格合并和二维表头.rar myMultiColHe ...

  9. C++之迭代器

    迭代器的概念 迭代器是用来访问string对象或vector对象的元素的,类似于下标运算和指针. 其对象是容器中的元素或string对象中的字符: 使用迭代器可以访问某个元素,迭代器也能从一个元素移动 ...

  10. Nginx学习随笔

    题外话 第一份工作中项目中有DBA和运维,所以平时也只关注开发部分,对数据库和服务器关注比较少,记得那时有用户反馈网站很慢,老大让我联系运维看看是不是服务器的问题,那时也不知道Nginx是个什么东西. ...