MongoDB 分片副本集集群搭建
配置准备
三台机器:
A(193.168.10.101) B(193.168.10.102) C(193.168.10.103)
MongoDB 安装目录:/usr/local/mongodb
MongoDB 数据库目录:/usr/local/mongodb/data MongoDB 日志目录:/usr/local/mongodb/log
MongoDB 配置文件:/usr/local/mongodb/conf/mongodb.conf
每台机器上都安装好mongodb
配置过程
启动mongo实例
三台机器上分别启动
./mongod --logpath /usr/local/mongodb/logs/a/r0.log --logappend --dbpath /usr/local/mongodb/data/a/r0 --journalCommitInterval --port --shardsvr --replSet setA --rest --oplogSize --fork ./mongod --logpath /usr/local/mongodb/logs/b/r0.log --logappend --dbpath /usr/local/mongodb/data/b/r0 --journalCommitInterval --port --shardsvr --replSet setB --rest --oplogSize --fork ./mongod --logpath /usr/local/mongodb/logs/c/r0.log --logappend --dbpath /usr/local/mongodb/data/c/r0 --journalCommitInterval --port --shardsvr --replSet setC --rest --oplogSize --fork
./mongod --configsvr --logpath /usr/local/mongodb/logs/configServer/r0.log --logappend --dbpath /usr/local/mongodb/data/configServer/r0 --port --fork
//三台机器执行完上面的以后 再执行下面的命令
./mongos --configdb 193.168.10.101:,193.168.10.102:,193.168.10.103: --logpath /usr/local/mongodb/logs/serverlogs/mongos.log --logappend --port --fork
设置副本集
./mongo 193.168.10.101:
rs.initiate({_id : "setA", members : [{_id : , host : "193.168.10.101:10000"}]})
rs.add("193.168.10.102:10000")
rs.add("193.168.10.103:10000") ./mongo 193.168.10.101:
rs.initiate({_id : "setB", members : [{_id : , host : "193.168.10.101:20000"}]})
rs.add("193.168.10.102:20000")
rs.add("193.168.10.103:20000") ./mongo 193.168.10.101:
rs.initiate({_id : "setC", members : [{_id : , host : "193.168.10.101:30000"}]})
rs.add("193.168.10.102:30000")
rs.add("193.168.10.103:30000")
可以自己设置哪个是主节点
cfg=rs.status() //查看节点顺序
...... cfg.members[].priority =
cfg.members[].priority =
cfg.members[].priority = //设置为2的为主节点
rs.reconfig(cfg)
分别进入两个从节点进行配置(setA setB setC每个的从节点都需要)
db.getMongo().setSlaveOk() //设置从节点为只读
设置分片
//设置分片 从50000路由端口进入
./mongo 193.168.10.101: sh.addShard("setA/193.168.10.101:10000,193.168.10.102:10000,193.168.10.103:10000"); sh.addShard("setB/193.168.10.101:20000,193.168.10.102:20000,193.168.10.103:20000"); sh.addShard("setC/193.168.10.101:30000,193.168.10.102:30000,193.168.10.103:30000");
验证
printShardingStatus()
use testdb
db.createCollection('test01') //创建一个表
use admin
db.runCommand({enablesharding:'test01'}) //设置数据库可以分片
db.runCommand({shardcollection:'testdb.test01',key:{c_id:}})
MongoDB 分片副本集集群搭建的更多相关文章
- Mongodb分片副本集集群搭建
一.环境准备 1.1.主机信息(机器配置要求见硬件及开发标准规范文档V1.0) 序号 主机名 IP 1 DB_01 10.202.105.52 2 DB_02 10.202.105.53 3 DB_0 ...
- [原创]在Docker上部署mongodb分片副本集群。
一.安装docker. 请参考:http://www.cnblogs.com/hehexiaoxia/p/6150584.html 二.编写dockerfile. 1.在根目录下创建mongod的do ...
- mongodb 3.4 集群搭建:分片+副本集
mongodb是最常用的nodql数据库,在数据库排名中已经上升到了前六.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...
- mongodb 3.6 集群搭建:分片+副本集
mongodb是最常用的nosql数据库,在数据库排名中已经上升到了前六.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...
- mongodb3.6集群搭建:分片+副本集
mongodb是最常用的noSql数据库,在数据库排名中已经上升到了前五.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...
- Mongo分片+副本集集群搭建
一. 概念简单描述 1. MongoDB分片集群包含组件: mongos,configserver,shardding分片 2. Mongos:路由服务是Sharded cluster的访问入口,本身 ...
- MongoDB 3.0 常见集群的搭建(主从复制,副本集,分片....)
一.mongodb主从复制配置 主从复制是mongodb最常用的复制方式,也是一个简单的数据库同步备份的集群技术,这种方式很灵活.可用于备份,故障恢复,读扩展等. 最基本的设置方式就是建立一个主节 ...
- mongodb 搭建集群(分片+副本集)
mongodb 搭建集群(分片+副本集) 一.搭建结构图: 二.搭建步骤:
- mongodb集群搭建(分片+副本)
原文地址:https://www.cnblogs.com/ityouknow/p/7344005.html 相关概念 先来看一张图: 从图中可以看到有四个组件:mongos.config server ...
随机推荐
- php生成随机颜色代码
function rand_color($color_array) { $color = dechex(rand(3355443,13421772)); if (in_array($color, $c ...
- FPGA该如何应对ASIC的大爆发?
有人认为,除了人才短缺.开发难度较大,相比未来的批量化量产的ASIC芯片,FPGA在成本.性能.功耗方面仍有很多不足.这是否意味着,在ASIC大爆发之际,FPGA将沦为其“过渡”品的命运? 安路科技市 ...
- iview-admin打包笔记
在程序根目录右键打开cmd,输入 npm run build 这时就会进入打包的步骤,打包好之后就会在程序根目录出现一个dist的文件夹,里面有一个index.html文件和另一个dist的文件夹. ...
- 硬盘安装雨林木风Win7旗舰版系统教程
硬盘安装雨林木风Win7旗舰版系统教程 安装完成,登录后报administrator无权限, F8 进入安全模式,修改administrator的权限.
- 1036 Boys vs Girls (25 分)
1036 Boys vs Girls (25 分) This time you are asked to tell the difference between the lowest grade of ...
- Linux下XAMPP装完之后,Navicat无法连上数据库的问题的解决 注意'mypassword'是当前的mysql登录密码
Linux下装完XAMPP之后,mysql是自带装好了的,这个时候,mysql的root用户没有密码. 在mac 下安装好xampp后,需要在终端命令行操作时,比如输入:mysql -u root - ...
- JSON Web Token的使用(转载)
定义 JSON Web Token(JWT)是一个非常轻巧的规范.这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息. 适用场景 1.用于向Web应用传递一些非敏感信息.例如完成加好友.下 ...
- javascript创建对象之构造函数模式(二)
对上一章节的工厂模式进行代码重写 function Human(name, sex) { this.name = name; this.sex = sex; this.say = function ( ...
- 第11课 enum、sizeof、typedef 分析
1. enum枚举类型 1.1 使用方法 (1)enum是C语言中的一种自定义类型 (2)enum值是可以根据需要自定义的的整型值 (3)第一个定义的enum值默认为0. (4)默认情况下的enum值 ...
- Linux系统查看系统硬件配置信息
1.查看CPU信息 # 查看cpu负载 uptime # cpu使用率 (没有sar 则yum -y install sysstat) sar top bn1 |grep %Cpu # 每个cpu使用 ...