sharing分片集合环境搭建【MongDB系列之七】
注意:shop是前几讲搭建起来的副本集(这节不会详细说明怎么搭建)
D: 副本集 shop1 数据路径: D:\MongDB_E\data\bin 端口:192.168.0.100:9100
E: 副本集 shop1 数据路径: D:\MongDB_F\data\bin 端口:192.168.0.100:9200
CNF: 配置服务器:D:\MongDB_CNF\data\bin 端口:192.168.0.100:9400
CNF: 配置服务器:E:\MongDB_CNF\data\bin 端口:192.168.0.100:9500
CNF: 配置服务器:E:\MongDB_CNF\data\bin 端口:192.168.0.100:9600
ROT: 副本集shop1 路由服务器,数据路径: D:\MongDB_ROT\data\bin
端口:192.168.0.100:9300
ROT: 在192.168.0.101指定路由服务器,数据路径: D:\MongDB_ROT\data\bin 端口: 9300
说明:
路由服务器会连接到由前几章节搭建起来的副本集合 shop,以及由D,E服务器新搭建的新副本集shop1(没有给分配仲裁服务器)
此次访问将通过客户端直接访问路由器,由路由器决定访问哪个副本集的primary。
1. 搭建副本集shop1
1) 启动副本集shop1端口9100
mongod --dbpath D:\MongDB_E\data\db --port 9100 --replSet shop1/192.168.0.100:9100 --shardsvr --bind_ip 192.168.0.100
2) 启动副本集shop1端口9200
mongod --dbpath D:\MongDB_F\data\db --port 9200 --replSet shop1/192.168.0.100:9100 --shardsvr --bind_ip 192.168.0.100
启动的时候一定要指定一个局域网IP地址,否则最后会报错,无法连接等的错误信息。启动副本集shop的时候也需要全部指定IP地址,在本例中shop集合对应的IP地址是,192.168.0.101
3) 初始化副本集shop1
登录9100端口,使用admin用户
执行命令初始化:
db.runCommand({"replSetInitiate":{
"_id":"shop1","members":[
{"_id":1,"host":"192.168.0.100:9100","priority":1},
{"_id":2,"host":"192.168.0.100:9200"}
]}})
Priority:1 指定默认的primary服务器 ,如果无法执行确认 数据库路径,命令编码是否正常。
4) 测试shop1成功初始化
5) 启动shop1 集合中的配置服务器
mongod --configsvr --port 9400 --dbpath D:\MongDB_CNF\data\db
mongod --configsvr --port 9500 --dbpath E:\MongDB_CNF\data\db
mongod --configsvr --port 9600 --dbpath E:\MongDB_CNF2\data\db
注意在192.168.0.100 即,shop1 集合所在的机器启动了三个配置服务器 9400 、9500和 9600。(因为在启动路由的时候如果写两个配置库,提示:要么1个配置服务器,要么3个配置服务器会报错。)
6) 启动shop1 集合中的路由服务器
mongos --configdb 192.168.0.100:9400,192.168.0.100:9500,192.168.0.100:9600 --port 9300 --chunkSize 1
configdb 参数后面跟的是配置服务器,并且数量为1或3
7) rs.isMaster() 查看当前连接服务器的状态。
2. Shop集合中配置路由服务器
ROT: 路由服务器,数据路径: D:\MongDB_ROT\data\bin 端口:192.168.0.101:9300
mongos --configdb 192.168.0.100:9400,192.168.0.100:9500,192.168.0.100:9600 --port 9300 --chunkSize 1
mongos 启动参数中,chunkSize 这一项是用来指定chunk 的大小的,单位是MB,默认大小
为200MB,为了方便测试Sharding 效果,我们把chunkSize 指定为 1MB
至此,在192.168.0.100 上配置的server,和route已经完成,在192.168.0.101 即:127.00.1上配置的server和route也完成。下面将给route 加入副本集合。
3. 配置Sharding
1) 登录shop1路由服务器添加副本集 sharing登录路由服务器 使用admin 将 两个副本集中的副本集数据库服务器,加入到当前share中:
db.runCommand({addshard:"shop1/192.168.0.100:9100,192.168.0.100:9200"});
db.runCommand({addshard:"shop/192.168.0.101:7400,192.168.0.101:7500,192.168.0.101:7600"})
2) 激活数据库及集合的分片
3) 测试数据
for(var i=1;i<=2000;i++) db.users.insert({id:i,addr_1:"Beijing",addr_2:"Shanghai"});
登陆路由服务器 9300 切换到test 数据库写入数据。
4) 查看分片的状态
db.users.stats();
可以看到shard2 和 shard1 里面都有对应的数据。(上图是新建的环境下测试的结果)
5)
4. Config服务器关闭后下次无法启动提示repair 使用如下命令执行恢复操作
执行修复后启动正常。
转载于:https://blog.51cto.com/mvc2008mvc/1228826
sharing分片集合环境搭建【MongDB系列之七】相关推荐
- 程序员福音 【完整的Java开发环境搭建】 系列篇
原文地址 BY Jason 文章目录 原文地址 Java开发环境搭建 统一问题解决(更新中) 1. vim常用操作命令 2. 关于Linux防火墙开放端口问题 环境安装目录(更新中) Docker安装 ...
- 移植u-boot1.1.6到友善mini2440学习笔记之环境搭建(系列之一)
前记:两年前就想学习ARM,由于一些原因耽搁了下来.如今迫于找硬件岗位工作的压力,不得不硬着头皮学习ARM,以前就知道ARM入门是计较困难的,如今真是体会深切啊,全是心酸泪,不仅自己的无知跟自己作对, ...
- jmeter404_Ant+Jmeter 环境搭建-常见问题系列二
问题十,安装json插件,用于校验json响应的数据 下载地址:http://download.csdn.net/download/sankun/9680868 1.邮件多个收件人:英文逗号分隔! A ...
- Django 笔记1 -- 环境搭建
Django 笔记1 – 环境搭建 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Djang ...
- Hibernate 系列 02 - Hibernate介绍及其环境搭建
引导目录: Hibernate 系列教程 目录 昨晚喝多了,下午刚清醒,继续搞Hibernate.走起. 觉得还行的话,记得点赞哈,给我这个渣渣点学习的动力.有错误的话也请指出,省的我在错误上走了不归 ...
- python3.6 django教程_【Python3.6+Django2.0+Xadmin2.0系列教程一】环境搭建及项目创建
由于工作需要,接触了大半年时间的Django+xadmin框架,一直没空对这块对进行相关的梳理.最近在同事的怂恿下,就在这分享下笔者的学习及工作经验吧. 好了,话不多说,下面开始进入正题: 环境需求: ...
- Ubuntu环境搭建系列—JavaEE篇
恩,其实我是一时兴起,所以就写了目前这几篇环境的博文,希望能给自己做一个笔记,同时也能够给一些新手带来一些帮助,不会在配置方面那么迷茫.本篇文章主要就是针对Java web开发进行环境搭建. 一.To ...
- 树莓派slam_SLAM+语音机器人DIY系列:(五)树莓派3开发环境搭建——6.树莓派USB与tty串口号绑定...
摘要 通过前面一系列的铺垫,相信大家对整个miiboo机器人的DIY有了一个清晰整体的认识.接下来就正式进入机器人大脑(嵌入式主板:树莓派3)的开发.本章将从树莓派3的开发环境搭建入手,为后续ros开 ...
- React系列---Webpack环境搭建(二)不同环境不同配置
React系列---Webpack环境搭建(一)手动搭建 React系列---Webpack环境搭建(二)不同环境不同配置 React系列---Webpack环境搭建(三)打包性能优化 实际项目中,往 ...
最新文章
- Kotlin极简教程:第5章 集合类
- SQL 难点解决:循环计算
- php token 验证,PHP如何实现Token验证
- 电力电子单相交流调压电路实验,江南大学物联网工程学院,实验报告
- php打印错误日志到本地,nginx+php怎么打印php的错误日志?
- ajax学习笔记之一
- 一些实用博客的分享(ES6详解,echart属性详解)
- Merge PDF - Split PDF(PDF合成)
- Python抠图程序源码
- vst和vst3插件_用于家庭录音的经典VST插件
- 将自己开发的vue组件库发布到npm
- linux下载tar包和rpm包以及镜像的地址分享一下
- imx6ul can调试(代码)
- mysql数据库读取数据,教你如何从 MySQL 数据库读取数据
- 2022全国大学生数学建模竞赛
- Python 把两张图片拼起来
- 中国金融进入移动支付时代
- CSS3中steps()动画的详解
- java启动监听器报错_初识 Java-监听器
- 美味的黄油如果不冷藏,会变质吗?
热门文章
- emq+mysql设置_EMQ--添加mysql认证及mysql插件访问控制
- 函数最值题目及答案_呆哥数学每日一题 ——多元函数求最值
- nginx日志中添加请求的response日志
- Cocos Creator导出场景和预制的问题
- VS2010 无法计算HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\14.0@VCTargetPath处的属性表达式...
- ckeditor和ckfinder的使用
- 数据结构分析之——图
- 创新工场CE0李开复:互联网创业黄金时代来临
- xfce不小心禁用了鼠标
- intellij连接真实的flink集群