mongoDB 分片

MongoDB  /  houtizong 发布于 1年前   122
    mongoDB的分片。要mongos查询数据时候 先查询configsvr看数据在那台shard上,configsvr上边放的是metar信息,指的是那条数据在那个片上。由此可以看出mongo在做分片的时候咱们至少要有一个configsvr,和两个以上的shard(片)信息。
    第一步启动两台以上的mongo服务
        ./bin/mongod --dbpath /home/m17  --logpath /home/log/log17.log --fork --port 27017
        ./bin/mongod --dbpath /home/m18 --logpath /home/log/log18.log --fork --port 27018
    第二步 启动 一个configsvr
       ./bin/mongod --dbpath /home/m19 --logpath /home/log.m19.log --fork --port 27019 --configsvr
     第三部启动一个mongos
        ./bin/mongos --configdb 192.168.1.12:27019 --logpath /home/log/log20.lg --port 40000
      第四部链接上mongos
     ./bin/mongo --port 40000
      sh.addShard('192.168.1.202:27017')
      sh.addShard('192.168.1.202:27018')
      第五步设置分片规则
       sh.enableShard('shop') //shop启动分片
       sh.shardCollection('shop.grades','grade_id') //grade_id 片键 (表的主键)
       db.settings.save({_id:'chunksize'},{$set:{value:1}}); //设置每一个chunk的大小,(每一片上的数据分了很多个chunk)
      第六步手动预先分片(如果不走分片,chunk会来回移动形成很大的io流)
        sh.splitAt('db.collection',{grade_id(片键):1000}) //db下的一个表,在碰到1000的时候进行分片     

    到这里分片就完成了

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:514224527@qq.com;

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客