iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MongoDB中怎么实现分片与集群
  • 347
分享到

MongoDB中怎么实现分片与集群

2024-04-02 19:04:59 347人浏览 八月长安
摘要

这期内容当中小编将会给大家带来有关mongoDB中怎么实现分片与集群,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、 mongodb分片与集群拓扑图二、分片与集群的部署

这期内容当中小编将会给大家带来有关mongoDB中怎么实现分片与集群,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

一、 mongodb分片与集群拓扑图

MongoDB中怎么实现分片与集群

二、分片与集群的部署

1.Mongodb的安装

分别在以上3台服务器安装好monGodb

安装方法见安装脚本。

2.Mongod 创建单个分片的副本集

10.68.4.209

①建立数据文件夹和日志文件夹

mdkir /data/{master,slave,arbiter}

mkdir /data/log/mongodb/{master,slave,arbiter} -p

②建立配置文件

#master.conf  dbpath=/data/master  logpath=/data/log/mongodb/master/mongodb.log  pidfilepath=/var/run/mongo_master.pid  #directoryperdb=true  logappend=true  replSet=policydb  port=10002  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  #slave.conf  dbpath=/data/slave  logpath=/data/log/mongodb/slave/mongodb.log  pidfilepath=/var/run/mongo_slave.pid  #directoryperdb=true  logappend=true  replSet=policydb  port=10001  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  #arbiter.conf  dbpath=/data/arbiter  logpath=/data/log/mongodb/arbiter/mongodb.log  pidfilepath=/var/run/mongo_arbiter.pid  #directoryperdb=true  logappend=true  replSet=policydb  port=10000  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200

③启动mongodb

/etc/init.d/mongodb_master start

/etc/init.d/mongodb_slave start

/etc/init.d/mongodb_arbiter start

④配置主、备、仲裁节点

主节点:

# /usr/local/mongodb/bin/mongo 10.68.4.209:10002  MongoDB shell version: 2.4.9  connecting to: 10.68.4.209:10002/test  > use admin  switched to db admin  >config={ _id:"policydb", members:[ {_id:0,host:'10.68.4.209:10002',priority:2}, {_id:1,host:'10.68.4.209:10001',priority:1},  ... {_id:2,host:'10.68.4.209:10000',arbiterOnly:true}] };  {  "_id" : "policydb",  "members" : [  {  "_id" : 0,  "host" : "10.68.4.209:10002",  "priority" : 2  },  {  "_id" : 1,  "host" : "10.68.4.209:10001",  "priority" : 1  },  {  "_id" : 2,  "host" : "10.68.4.209:10000",  "arbiterOnly" : true  }  ]  }  rs.initiate(config) #初始化  rs.status() #查看集群状态

10.68.4.29

①建立数据文件夹和日志文件夹

mdkir /data/{master,slave,arbiter}

mkdir /data/log/mongodb/{master,slave,arbiter} -p

②建立配置文件

#master.conf  dbpath=/data/master  logpath=/data/log/mongodb/master/mongodb.log  pidfilepath=/var/run/mongo_master.pid  #directoryperdb=true  logappend=true  replSet=policydb2  port=10002  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  #slave.conf  dbpath=/data/slave  logpath=/data/log/mongodb/slave/mongodb.log  pidfilepath=/var/run/mongo_slave.pid  #directoryperdb=true  logappend=true  replSet=policydb2  port=10001  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  #arbiter.conf  dbpath=/data/arbiter  logpath=/data/log/mongodb/arbiter/mongodb.log  pidfilepath=/var/run/mongo_arbiter.pid  #directoryperdb=true  logappend=true  replSet=policydb2  port=10000  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  ③启动mongodb  /etc/init.d/mongodb_master start  /etc/init.d/mongodb_slave start  /etc/init.d/mongodb_arbiter start

④配置主、备、仲裁节点

主节点:

# /usr/local/mongodb/bin/mongo 10.68.4.209:10002  MongoDB shell version: 2.4.9  connecting to: 10.68.4.209:10002/test  > use admin  switched to db admin  > config={ _id:"policydb2", members:[ {_id:0,host:'10.68.4.29:10002',priority:2}, {_id:1,host:'10.68.4.29:10001',priority:1},  ... {_id:2,host:'10.68.4.209:10000',arbiterOnly:true}] };  {  "_id" : "policydb",  "members" : [  {  "_id" : 0,  "host" : "10.68.4.29:10002",  "priority" : 2  },  {  "_id" : 1,  "host" : "10.68.4.29:10001",  "priority" : 1  },  {  "_id" : 2,  "host" : "10.68.4.29:10000",  "arbiterOnly" : true  }  ]  }  rs.initiate(config) #初始化  rs.status() #查看集群状态

10.68.4.30

①建立数据文件夹和日志文件夹

mdkir /data/{master,slave,arbiter}

mkdir /data/log/mongodb/{master,slave,arbiter} -p

②建立配置文件

#master.conf  dbpath=/data/master  logpath=/data/log/mongodb/master/mongodb.log  pidfilepath=/var/run/mongo_master.pid  #directoryperdb=true  logappend=true  replSet=policydb3  port=10002  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  #slave.conf  dbpath=/data/slave  logpath=/data/log/mongodb/slave/mongodb.log  pidfilepath=/var/run/mongo_slave.pid  #directoryperdb=true  logappend=true  replSet=policydb3  port=10001  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200  #arbiter.conf  dbpath=/data/arbiter  logpath=/data/log/mongodb/arbiter/mongodb.log  pidfilepath=/var/run/mongo_arbiter.pid  #directoryperdb=true  logappend=true  replSet=policydb3  port=10000  oplogSize=10000  fork=true  noprealloc=true  profile=1  slowms=200

③启动mongodb

/etc/init.d/mongodb_master start

/etc/init.d/mongodb_slave start

/etc/init.d/mongodb_arbiter start

④配置主、备、仲裁节点

主节点:

# /usr/local/mongodb/bin/mongo 10.68.4.209:10002  MongoDB shell version: 2.4.9  connecting to: 10.68.4.209:10002/test  > use admin  switched to db admin  > config={ _id:"policydb3", members:[ {_id:0,host:'10.68.4.30:10002',priority:2}, {_id:1,host:'10.68.4.30:10001',priority:1},  ... {_id:2,host:'10.68.4.30:10000',arbiterOnly:true}] };  {  "_id" : "policydb",  "members" : [  {  "_id" : 0,  "host" : "10.68.4.30:10002",  "priority" : 2  },  {  "_id" : 1,  "host" : "10.68.4.30:10001",  "priority" : 1  },  {  "_id" : 2,  "host" : "10.68.4.30:10000",  "arbiterOnly" : true  }  ]  }  rs.initiate(config) #初始化  rs.status() #查看集群状态

2.Mongod 创建单个分片的配置服务器

① 创建配置目录

10.68.4.209 mkdir /data/config

10.68.4.29 mkdir /data/config

10.68.4.30 mkdir /data/config

②准备配置服务器的配置文件

3个服务器的配置服务器的配置文件一致

#config.conf  dbpath=/data/config  logpath=/data/log/mongodb/config/mongodb.log  pidfilepath=/var/run/mongo_config.pid  directoryperdb=true  logappend=true  port=10003  fork=true  configsvr=true

③启动配置服务器

/etc/init.d/mongodb_config start

3.Mongod 创建并配置mongos和开启分片模式

① 创建日志目录

Mkdir -p /data/log/mongodb/mongos/

② 准备mongos的配置文件

#mongos.conf  logpath=/data/log/mongodb/mongos/mongodb.log  pidfilepath=/var/run/mongo_mongos.pid  logappend=true  port=10004  fork=true  configdb=10.68.4.209:10003,10.68.4.29:10003,10.68.4.30:1000

③ 启动mongos

/etc/init.d/mongodb_mongos start

④ 配置分片

sh.addShard("policydb/10.68.4.209:10002")  sh.addShard("policydb2/10.68.4.29:10002")  sh.addShard("policydb3/10.68.4.30:10002")  sh.enableSharding("policydb")  db.runCommand({"shardcollection":"policydb.fullPolicyTextInfo_history", "key":{"key":1}})  db.printShardingStatus() #查看分片状态  sh.status({verbose:true})  sh.status()

3.快速创建副本集和配置服务脚本

上图

1.图1

MongoDB中怎么实现分片与集群

2.图2 config.conf配置文件

MongoDB中怎么实现分片与集群

3.图3

MongoDB中怎么实现分片与集群

上述就是小编为大家分享的MongoDB中怎么实现分片与集群了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: MongoDB中怎么实现分片与集群

本文链接: https://www.lsjlt.com/news/57977.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MongoDB中怎么实现分片与集群
    这期内容当中小编将会给大家带来有关MongoDB中怎么实现分片与集群,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、 mongodb分片与集群拓扑图二、分片与集群的部署...
    99+
    2022-10-18
  • MongoDB中怎么搭建分片集群
    本篇文章为大家展示了MongoDB中怎么搭建分片集群,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。MongoDB分片集群基本组件介绍mongos:数据库集群请求的入...
    99+
    2022-10-18
  • mongodb 中怎么设置分片集群
    今天就跟大家聊聊有关mongodb 中怎么设置分片集群,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、先enable sharding,开启数据库...
    99+
    2022-10-18
  • mongodb分片集群怎么搭建
    要搭建一个MongoDB分片集群,您需要遵循以下步骤: 安装MongoDB:在每个节点上安装MongoDB。您可以从MongoD...
    99+
    2023-10-26
    mongodb
  • mongodb 中怎么利用分片集群创建分片集合
    mongodb 中怎么利用分片集群创建分片集合,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1.创建数据库,直接use 即可,没有的话,如果你...
    99+
    2022-10-18
  • MongoDB中怎么实现分布式集群
    本篇文章给大家分享的是有关 MongoDB中怎么实现分布式集群,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。集群概览mongodb 相关的进程...
    99+
    2022-10-18
  • MongoDB中怎么实现集群
    本篇文章给大家分享的是有关MongoDB中怎么实现集群,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。基本概念文档(document):文档是M...
    99+
    2022-10-18
  • Mongodb中怎么实现副本集和分片
    这篇文章将为大家详细讲解有关Mongodb中怎么实现副本集和分片,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Python只用mongo事务在python中...
    99+
    2022-10-18
  • mongodb分片集群生产环境怎么配置
    要配置MongoDB分片集群的生产环境,您需要执行以下步骤:1. 设计分片策略:确定如何划分数据片段和选择分片键。分片键是用于将数据...
    99+
    2023-08-23
    mongodb
  • Redis分片集群的实现
    目录1 搭建分片集群1.1 集群结构1.2 准备实例和配置1.3 启动1.4 创建集群1.5 测试2 散列插槽3 集群伸缩3.1 创建节点并添加到集群3.2 转移插槽4 故障转移4....
    99+
    2023-01-30
    Redis 分片集群 Redis 分片
  • Redis 分片集群的实现
    目录1 搭建分片集群1.1 集群结构1.2 准备实例和配置1.3 启动1.4 创建集群1.5 测试2 散列插槽3 集群伸缩3.1 创建节点并添加到集群3.2 转移插槽4 故障转移4.1.自动故障转移4.2 手动故障转移5...
    99+
    2023-01-30
    Redis分片集群 Redis分片
  • 深入剖析MongoDB的复制集与分片集群的搭建与优化
    深入剖析MongoDB的复制集与分片集群的搭建与优化概述在大规模应用程序中,数据存储和管理是至关重要的。MongoDB作为一种非关系数据库解决方案,广泛用于处理大规模数据集和高负载应用程序的需求。MongoDB的数据复制和分片功能让用户能够...
    99+
    2023-11-04
    - MongoDB - 复制集 - 分片集群
  • MongoDB中怎么实现分片操作
    本篇文章为大家展示了MongoDB中怎么实现分片操作,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.分片简介分片是指将数据拆分,将其分散存在不同机器上的过程.有时...
    99+
    2022-10-18
  • MongoDB副本集分片集群一分片config库主机断电导致该分片config库无法启动怎么办
    这篇文章给大家分享的是有关MongoDB副本集分片集群一分片config库主机断电导致该分片config库无法启动怎么办的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。由于机房意外...
    99+
    2022-10-19
  • 怎么对mongodb中某个集合做分片
    本篇内容介绍了“怎么对mongodb中某个集合做分片”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!本例中t...
    99+
    2022-10-19
  • 怎么在MongoDB中添加分片副本集
    这篇文章将为大家详细讲解有关怎么在MongoDB中添加分片副本集,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。流程:新建分片副本集使用addShard命令将分片副本集添加到集群中使用addS...
    99+
    2023-06-14
  • mongodb中怎么搭建shard_replica集群
    本篇文章为大家展示了mongodb中怎么搭建shard_replica集群,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。参考官方文档,大致步骤第一步:创建Confi...
    99+
    2022-10-18
  • ElasticSearch中怎么实现集群分布式
    本篇文章为大家展示了ElasticSearch中怎么实现集群分布式,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。索引(index)“索引” 这个词在 Elastic...
    99+
    2022-10-18
  • redis分片式集群是怎么做的
    redis分片式集群的实现方法:准备6台Linux服务器,在每台服务器上安装redis服务。安装好之后,修改每台服务器的配置文件redis.conf,修改如下几项:#端口分别设置为10000~10005port 10000#开启cluste...
    99+
    2022-10-06
  • mongodb中副本集集群技术怎么使用
    在MongoDB中,副本集集群技术用于提供高可用性和故障容错的解决方案。副本集是由多个MongoDB实例组成的集群,其中包括一个主节...
    99+
    2023-08-23
    mongodb
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作