`

mongodb 分布式配置

阅读更多

一、副本集(replSet)

    在普通的主从关系的部署模式已经满足不了需求,所以推介副本集形式,好处之一是在主节点down了以后可以自动地在众多的secondary的节点中推选出主节点,实现自动切换。

    

    配置方式如下:

  1.  创建rs.conf启动配置文件
    port = 27017
    dbpath = /data/db
    logpath = /log/log.log
    fork = true
    replSet = test
     主要的参数设置
  2. 启动mongodb
    ./mongod -f rs.conf
     
  3. 任意进入一个副本集mongo
    config={
    	_id:'test',members:[
    		{_id:0,host:"192.168.13.1:27017"},
    		{_id:1,host:"192.168.13.2:27017"},
    		{_id:2,host:"192.168.13.3:27017"}
    	]
    }
    
    rs.initiate(config)
     如此便启动副本集成功

二、分片(shards)

    副本集是从数据冗余来解决读写性能和容灾,但是对于读写性能来讲提升有限,并且当数据量达到一定程度时数据的存储和吞吐都会出现瓶颈,而分片恰好用数据分储来解决吞吐性能,单个分片shard可以使用Master-Slave或者使用replSet(推荐),所以对于大规模的数据储存还是推荐使用分布式shards。

 

    服务器MongoDB实例所需要的角色config-server(配置服务器),mongos-server(片键服务器存储片键拆分相当于数据路由器),shards-server(分片服务器实际的储存数据的服务器)

 

    配置方式:

  1.   配置config-server方式跟普通的mongodb一样设置port,fork,dbpath,logpath
  2.   配置mongos-server不需要配置dbpath,需要配置configdb指向(1)中配置的host:port
  3.   配置shard跟普通的mongodb实例一样同(1)
  4.   登录mongos进行分片的指向,
    use admin;
    db.runCommand({"addshard":"192.168.13.213:10000"}) 
     将192.168.13.213:10000作为分片加入
  5.   加入完shards,开始配置进行分片的DB以及Collection
    #shard db
    db.runCommand( { enablesharding : "shard" } );
     
    #shard collections
    db.runCommand( { shardcollection : "shard.test", key : { name : 1 } } )
     key是指明进行分片的字段,改字段必须是已经作了索引,而且联合index进行分片
  6. 移除shard
    db.runCommand({removeshard:"192.168.13.213:10002"});
     但是移除的shard是某个db的primary的话需要movePrimary
    db.runCommand({ movePrimary : "shard", to : "shard0002" });
     
  7. 一些管理命令
    db.printShardingStatus();
     查看分片的情况
    use config;
    db.shards.find();
     可以使用config库来查看一些配置记录
分享到:
评论

相关推荐

    MongoDB分布式搭建执行文件(直接可运行)搭建MongoDB分布式集群

    (3) 请在报告中使用文字和截图详细描述MongoDB分片集群搭建及配置的主要步骤: - 搭建配置集服务器(Mongod) - 搭建分片集服务器(Mongod) - 搭建路由节点服务器(Mongos) - 添加分片集到集群 - 创建数据库...

    mongodb的大型分布式部署

    mongo数据库的大型分布式部署文档。 Mongo大型部署 1. 一个或多个分片,其中每个分片持有部分数据(自动管理)。读写操作自动路由到合适的分片上。每个分片是一个replica set。 一个replica set是一台或多台服务器,...

    MongoDB 集群配置示例之 sharding 模式

    本文档是一份 MongoDB 集群的sharding模式配置实例,环境是某电信运营商的模拟环境,示例配置意义具有较高的可信度,可以作为生产环境的部署实施参考。

    原创Linux下Mongodb的分布式分片群集(sharding cluster)配置

    原创Linux下Mongodb的分布式分片群集(sharding cluster)配置

    基于Mongodb分布式存储物理文件

    在之前的文章中介绍了如何对关系型数据数据通过auto-sharding进行分布式数据存储,今天介绍如何对物理文件(小文件,基本小于100K)进行分布式存储。接着看一下要配置的测试环境(与前一篇中类似):模拟2个shard服务...

    Linux下Mongodb的分布式分片群集shardingcluster配置.pdf

    Linux下Mongodb的分布式分片群集shardingcluster配置.pdf

    详解mongodb 主从配置

    我研究过的nosql,memcache,redis,mongodb都是支持分布式的,生产环境中用过memcache,redis,性能稳定。mongodb是最接近关系型数据库的,不用花很多时间去构建数据库模型,将来我会用mongodb,看一下主从配置

    mongodb 4.0.5 我的第一次数据库集群(linux).zip

    当我还是小白的时候,老大给我分配了一个mongodb分布式集群鉴权的任务,putty远程链接linux, 上传mongodb.tar.gz, 解压配置,(具体就不说了,我的csdn博客应该有)

    linux环境下mongodb配置文档及安装包

    linux环境下mongodb配置文档及安装包,安装之前一定要检查系统是多少位的,MongoDb区分位数使用 getconf LONG_BIT 命令查看

    MongoDB开发使用手册

    MongoDB开发使用手册 1 一.基础部分 1 MongDB简介 1 Mongdb的安装和配置 8 简单的数据操作 13 常用工具集 16 推荐客户端工具 16 二.mongoDB应用开发 18 MongoDB机制 18 ...三.mongoDB分布式集群 44 分片 44

    Mongodb数据库

    mongodb数据库分布式分片群集的配置详解,是部署项目需要的

    mongodb3.2集群配置

    基于mongodb3.2的真实生产环境配置,日采集数据量10G+

    mongodb帮助文档整合

    mongodb分片配置.docx Mongodb.chm mongodb安装以及基本操作.docx MongoDB使用手册.doc mongo分布式研究.docx 有这5个文档足够学习Mongodb使用了

    MongoDB分片副本级

    MongoDB分片副本级 详细的讲述了MongoDB分片副本级配置

    black_hole:另一种基于mongodb的分布式存储架构与官方不同

    黑洞中间件基于 mongodb,用于存储任意大小的大数据。开始和停止 python black_hole.py startpython black_hole.py stop配置 { "pwd":"path/to/black_hole", "blackhole": { "ip":"10.12.7.55", "port":8989, ...

    深入云计算 MongoDB管理与开发实战详解pdf.part1

    作为基于分布式文件存储的数据库,在目前的云计算实践中,MongoDB炙手可热。《深入云计算(MongoDB管理与开发实战详解)》系统全面的介绍了MongoDB开发、管理、维护和性能优化等方方面面。详细而深入,对MongoDB的开发...

    mongoDB数据库的增删改查,以及所需要的配置.zip

    mongoDB是一个基于分布式文件存储的数据库,由 C++ 语言编写,旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。它介于关系数据库和非关系数据库之间,被认为是非关系数据库当中功能最丰富,最像关系数据库的...

    深入学习MongoDB

    本书分两部分,分别来自O’Reilly的《MongoDB扩展技术》与《MongoDB开发技巧50例》两书。前一部分“MongoDB扩展技术”指导大家创建...遵照其中建议,你很快就可通过MongoDB构建和运行一个高效的、可预测的分布式系统。

    MongoDB 学习笔记(一)-MongoDB配置

    MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像...

Global site tag (gtag.js) - Google Analytics